diff options
author | Bill Wendling <isanbard@gmail.com> | 2013-12-01 04:40:32 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2013-12-01 04:40:32 +0000 |
commit | d0cf77ad590633c0e10336e4c59b509140328042 (patch) | |
tree | 0ef643f5ab912f6787aad2d1f9fe33c9f686fbd2 /lib/MC/MCSectionCOFF.cpp | |
parent | 11e571c95403c73dc8d12d91a4da2a989c4ccbf5 (diff) | |
download | llvm-d0cf77ad590633c0e10336e4c59b509140328042.tar.gz llvm-d0cf77ad590633c0e10336e4c59b509140328042.tar.bz2 llvm-d0cf77ad590633c0e10336e4c59b509140328042.tar.xz |
--- Reverse-merging r195823 into '.':
U lib/MC/MCSectionCOFF.cpp
U lib/CodeGen/TargetLoweringObjectFileImpl.cpp
U test/MC/COFF/weak-symbol.ll
U test/MC/COFF/tricky-names.ll
G .
--- Recording mergeinfo for reverse merge of r195823 into '.':
G .
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_34@196036 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/MCSectionCOFF.cpp')
-rw-r--r-- | lib/MC/MCSectionCOFF.cpp | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/lib/MC/MCSectionCOFF.cpp b/lib/MC/MCSectionCOFF.cpp index bb35027464..64aa2c5c49 100644 --- a/lib/MC/MCSectionCOFF.cpp +++ b/lib/MC/MCSectionCOFF.cpp @@ -20,8 +20,6 @@ MCSectionCOFF::~MCSectionCOFF() {} // anchor. // should be printed before the section name bool MCSectionCOFF::ShouldOmitSectionDirective(StringRef Name, const MCAsmInfo &MAI) const { - if (COMDATSymbol) - return false; // FIXME: Does .section .bss/.data/.text work everywhere?? if (Name == ".text" || Name == ".data" || Name == ".bss") @@ -60,41 +58,36 @@ void MCSectionCOFF::PrintSwitchToSection(const MCAsmInfo &MAI, OS << 'r'; if (getCharacteristics() & COFF::IMAGE_SCN_MEM_DISCARDABLE) OS << 'n'; - - OS << '"'; + OS << "\"\n"; if (getCharacteristics() & COFF::IMAGE_SCN_LNK_COMDAT) { - OS << ","; switch (Selection) { case COFF::IMAGE_COMDAT_SELECT_NODUPLICATES: - OS << "one_only,"; + OS << "\t.linkonce one_only\n"; break; case COFF::IMAGE_COMDAT_SELECT_ANY: - OS << "discard,"; + OS << "\t.linkonce discard\n"; break; case COFF::IMAGE_COMDAT_SELECT_SAME_SIZE: - OS << "same_size,"; + OS << "\t.linkonce same_size\n"; break; case COFF::IMAGE_COMDAT_SELECT_EXACT_MATCH: - OS << "same_contents,"; + OS << "\t.linkonce same_contents\n"; break; case COFF::IMAGE_COMDAT_SELECT_ASSOCIATIVE: - OS << "associative " << Assoc->getSectionName() << ","; + OS << "\t.linkonce associative " << Assoc->getSectionName() << "\n"; break; case COFF::IMAGE_COMDAT_SELECT_LARGEST: - OS << "largest,"; + OS << "\t.linkonce largest\n"; break; case COFF::IMAGE_COMDAT_SELECT_NEWEST: - OS << "newest,"; + OS << "\t.linkonce newest\n"; break; default: assert (0 && "unsupported COFF selection type"); break; } - assert(COMDATSymbol); - OS << *COMDATSymbol; } - OS << '\n'; } bool MCSectionCOFF::UseCodeAlign() const { |