diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-01-23 22:49:25 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-01-23 22:49:25 +0000 |
commit | e0fd567df0c8b140f2da7a1f0e7114454b6634c2 (patch) | |
tree | 0df37b5d4775aa057ff4face6974a05aa9a0f13b /lib/MC/WinCOFFStreamer.cpp | |
parent | 7772f9af13b753296227f380cee14080755250d1 (diff) | |
download | llvm-e0fd567df0c8b140f2da7a1f0e7114454b6634c2.tar.gz llvm-e0fd567df0c8b140f2da7a1f0e7114454b6634c2.tar.bz2 llvm-e0fd567df0c8b140f2da7a1f0e7114454b6634c2.tar.xz |
Remove duplicated info on what .text, .data and .bss look like.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199951 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC/WinCOFFStreamer.cpp')
-rw-r--r-- | lib/MC/WinCOFFStreamer.cpp | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/lib/MC/WinCOFFStreamer.cpp b/lib/MC/WinCOFFStreamer.cpp index cb4e9b1c37..b7d5574145 100644 --- a/lib/MC/WinCOFFStreamer.cpp +++ b/lib/MC/WinCOFFStreamer.cpp @@ -20,6 +20,7 @@ #include "llvm/MC/MCCodeEmitter.h" #include "llvm/MC/MCContext.h" #include "llvm/MC/MCExpr.h" +#include "llvm/MC/MCObjectFileInfo.h" #include "llvm/MC/MCObjectStreamer.h" #include "llvm/MC/MCSection.h" #include "llvm/MC/MCSectionCOFF.h" @@ -95,25 +96,16 @@ private: DF->getContents().append(Code.begin(), Code.end()); } - const MCSectionCOFF *getSectionText() { - return getContext().getCOFFSection( - ".text", COFF::IMAGE_SCN_CNT_CODE | COFF::IMAGE_SCN_MEM_EXECUTE | - COFF::IMAGE_SCN_MEM_READ, - SectionKind::getText()); + const MCSection *getSectionText() { + return getContext().getObjectFileInfo()->getTextSection(); } - const MCSectionCOFF *getSectionData() { - return getContext().getCOFFSection( - ".data", COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | - COFF::IMAGE_SCN_MEM_READ | COFF::IMAGE_SCN_MEM_WRITE, - SectionKind::getDataRel()); + const MCSection *getSectionData() { + return getContext().getObjectFileInfo()->getDataSection(); } - const MCSectionCOFF *getSectionBSS() { - return getContext().getCOFFSection( - ".bss", COFF::IMAGE_SCN_CNT_UNINITIALIZED_DATA | - COFF::IMAGE_SCN_MEM_READ | COFF::IMAGE_SCN_MEM_WRITE, - SectionKind::getBSS()); + const MCSection *getSectionBSS() { + return getContext().getObjectFileInfo()->getBSSSection(); } void SetSectionText() { @@ -141,7 +133,7 @@ void WinCOFFStreamer::AddCommonSymbol(MCSymbol *Symbol, uint64_t Size, unsigned ByteAlignment, bool External) { assert(!Symbol->isInSection() && "Symbol must not already have a section!"); - const MCSectionCOFF *Section = getSectionBSS(); + const MCSection *Section = getSectionBSS(); MCSectionData &SectionData = getAssembler().getOrCreateSectionData(*Section); if (SectionData.getAlignment() < ByteAlignment) SectionData.setAlignment(ByteAlignment); |