diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2011-10-20 21:10:27 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2011-10-20 21:10:27 +0000 | 
| commit | 30815c536baacc07e925f0aef23a5395883173dc (patch) | |
| tree | 2cbcf22585e99f8a87d12d5ff94f392c0d266819 /lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
| parent | 411bd29eea3c360d5b48a18a17b5e87f5671af0e (diff) | |
Notes
Diffstat (limited to 'lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
| -rw-r--r-- | lib/CodeGen/TargetLoweringObjectFileImpl.cpp | 535 | 
1 files changed, 0 insertions, 535 deletions
| diff --git a/lib/CodeGen/TargetLoweringObjectFileImpl.cpp b/lib/CodeGen/TargetLoweringObjectFileImpl.cpp index a3c562013b59..fb87154232a0 100644 --- a/lib/CodeGen/TargetLoweringObjectFileImpl.cpp +++ b/lib/CodeGen/TargetLoweringObjectFileImpl.cpp @@ -43,153 +43,6 @@ using namespace dwarf;  //                                  ELF  //===----------------------------------------------------------------------===// -TargetLoweringObjectFileELF::TargetLoweringObjectFileELF() -  : TargetLoweringObjectFile(), -    TLSDataSection(0), -    TLSBSSSection(0), -    DataRelSection(0), -    DataRelLocalSection(0), -    DataRelROSection(0), -    DataRelROLocalSection(0), -    MergeableConst4Section(0), -    MergeableConst8Section(0), -    MergeableConst16Section(0) { -} - -void TargetLoweringObjectFileELF::Initialize(MCContext &Ctx, -                                             const TargetMachine &TM) { -  TargetLoweringObjectFile::Initialize(Ctx, TM); - -  BSSSection = -    getContext().getELFSection(".bss", ELF::SHT_NOBITS, -                               ELF::SHF_WRITE |ELF::SHF_ALLOC, -                               SectionKind::getBSS()); - -  TextSection = -    getContext().getELFSection(".text", ELF::SHT_PROGBITS, -                               ELF::SHF_EXECINSTR | -                               ELF::SHF_ALLOC, -                               SectionKind::getText()); - -  DataSection = -    getContext().getELFSection(".data", ELF::SHT_PROGBITS, -                               ELF::SHF_WRITE |ELF::SHF_ALLOC, -                               SectionKind::getDataRel()); - -  ReadOnlySection = -    getContext().getELFSection(".rodata", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC, -                               SectionKind::getReadOnly()); - -  TLSDataSection = -    getContext().getELFSection(".tdata", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC | ELF::SHF_TLS | -                               ELF::SHF_WRITE, -                               SectionKind::getThreadData()); - -  TLSBSSSection = -    getContext().getELFSection(".tbss", ELF::SHT_NOBITS, -                               ELF::SHF_ALLOC | ELF::SHF_TLS | -                               ELF::SHF_WRITE, -                               SectionKind::getThreadBSS()); - -  DataRelSection = -    getContext().getELFSection(".data.rel", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_WRITE, -                               SectionKind::getDataRel()); - -  DataRelLocalSection = -    getContext().getELFSection(".data.rel.local", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_WRITE, -                               SectionKind::getDataRelLocal()); - -  DataRelROSection = -    getContext().getELFSection(".data.rel.ro", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_WRITE, -                               SectionKind::getReadOnlyWithRel()); - -  DataRelROLocalSection = -    getContext().getELFSection(".data.rel.ro.local", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_WRITE, -                               SectionKind::getReadOnlyWithRelLocal()); - -  MergeableConst4Section = -    getContext().getELFSection(".rodata.cst4", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_MERGE, -                               SectionKind::getMergeableConst4()); - -  MergeableConst8Section = -    getContext().getELFSection(".rodata.cst8", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_MERGE, -                               SectionKind::getMergeableConst8()); - -  MergeableConst16Section = -    getContext().getELFSection(".rodata.cst16", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_MERGE, -                               SectionKind::getMergeableConst16()); - -  StaticCtorSection = -    getContext().getELFSection(".ctors", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_WRITE, -                               SectionKind::getDataRel()); - -  StaticDtorSection = -    getContext().getELFSection(".dtors", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC |ELF::SHF_WRITE, -                               SectionKind::getDataRel()); - -  // Exception Handling Sections. - -  // FIXME: We're emitting LSDA info into a readonly section on ELF, even though -  // it contains relocatable pointers.  In PIC mode, this is probably a big -  // runtime hit for C++ apps.  Either the contents of the LSDA need to be -  // adjusted or this should be a data section. -  LSDASection = -    getContext().getELFSection(".gcc_except_table", ELF::SHT_PROGBITS, -                               ELF::SHF_ALLOC, -                               SectionKind::getReadOnly()); -  // Debug Info Sections. -  DwarfAbbrevSection = -    getContext().getELFSection(".debug_abbrev", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfInfoSection = -    getContext().getELFSection(".debug_info", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfLineSection = -    getContext().getELFSection(".debug_line", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfFrameSection = -    getContext().getELFSection(".debug_frame", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfPubNamesSection = -    getContext().getELFSection(".debug_pubnames", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfPubTypesSection = -    getContext().getELFSection(".debug_pubtypes", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfStrSection = -    getContext().getELFSection(".debug_str", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfLocSection = -    getContext().getELFSection(".debug_loc", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfARangesSection = -    getContext().getELFSection(".debug_aranges", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfRangesSection = -    getContext().getELFSection(".debug_ranges", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -  DwarfMacroInfoSection = -    getContext().getELFSection(".debug_macinfo", ELF::SHT_PROGBITS, 0, -                               SectionKind::getMetadata()); -} - -const MCSection *TargetLoweringObjectFileELF::getEHFrameSection() const { -  return getContext().getELFSection(".eh_frame", ELF::SHT_PROGBITS, -                                    ELF::SHF_ALLOC, -                                    SectionKind::getDataRel()); -} -  MCSymbol *  TargetLoweringObjectFileELF::getCFIPersonalitySymbol(const GlobalValue *GV,                                                       Mangler *Mang, @@ -493,221 +346,6 @@ getExprForDwarfGlobalReference(const GlobalValue *GV, Mangler *Mang,  //                                 MachO  //===----------------------------------------------------------------------===// -TargetLoweringObjectFileMachO::TargetLoweringObjectFileMachO() -  : TargetLoweringObjectFile(), -    TLSDataSection(0), -    TLSBSSSection(0), -    TLSTLVSection(0), -    TLSThreadInitSection(0), -    CStringSection(0), -    UStringSection(0), -    TextCoalSection(0), -    ConstTextCoalSection(0), -    ConstDataSection(0), -    DataCoalSection(0), -    DataCommonSection(0), -    DataBSSSection(0), -    FourByteConstantSection(0), -    EightByteConstantSection(0), -    SixteenByteConstantSection(0), -    LazySymbolPointerSection(0), -    NonLazySymbolPointerSection(0) { -} - -void TargetLoweringObjectFileMachO::Initialize(MCContext &Ctx, -                                               const TargetMachine &TM) { -  IsFunctionEHFrameSymbolPrivate = false; -  SupportsWeakOmittedEHFrame = false; - -  // .comm doesn't support alignment before Leopard. -  Triple T(((LLVMTargetMachine&)TM).getTargetTriple()); -  if (T.isMacOSX() && T.isMacOSXVersionLT(10, 5)) -    CommDirectiveSupportsAlignment = false; - -  TargetLoweringObjectFile::Initialize(Ctx, TM); - -  TextSection // .text -    = getContext().getMachOSection("__TEXT", "__text", -                                   MCSectionMachO::S_ATTR_PURE_INSTRUCTIONS, -                                   SectionKind::getText()); -  DataSection // .data -    = getContext().getMachOSection("__DATA", "__data", 0, -                                   SectionKind::getDataRel()); - -  TLSDataSection // .tdata -    = getContext().getMachOSection("__DATA", "__thread_data", -                                   MCSectionMachO::S_THREAD_LOCAL_REGULAR, -                                   SectionKind::getDataRel()); -  TLSBSSSection // .tbss -    = getContext().getMachOSection("__DATA", "__thread_bss", -                                   MCSectionMachO::S_THREAD_LOCAL_ZEROFILL, -                                   SectionKind::getThreadBSS()); - -  // TODO: Verify datarel below. -  TLSTLVSection // .tlv -    = getContext().getMachOSection("__DATA", "__thread_vars", -                                   MCSectionMachO::S_THREAD_LOCAL_VARIABLES, -                                   SectionKind::getDataRel()); - -  TLSThreadInitSection -    = getContext().getMachOSection("__DATA", "__thread_init", -                          MCSectionMachO::S_THREAD_LOCAL_INIT_FUNCTION_POINTERS, -                          SectionKind::getDataRel()); - -  CStringSection // .cstring -    = getContext().getMachOSection("__TEXT", "__cstring", -                                   MCSectionMachO::S_CSTRING_LITERALS, -                                   SectionKind::getMergeable1ByteCString()); -  UStringSection -    = getContext().getMachOSection("__TEXT","__ustring", 0, -                                   SectionKind::getMergeable2ByteCString()); -  FourByteConstantSection // .literal4 -    = getContext().getMachOSection("__TEXT", "__literal4", -                                   MCSectionMachO::S_4BYTE_LITERALS, -                                   SectionKind::getMergeableConst4()); -  EightByteConstantSection // .literal8 -    = getContext().getMachOSection("__TEXT", "__literal8", -                                   MCSectionMachO::S_8BYTE_LITERALS, -                                   SectionKind::getMergeableConst8()); - -  // ld_classic doesn't support .literal16 in 32-bit mode, and ld64 falls back -  // to using it in -static mode. -  SixteenByteConstantSection = 0; -  if (TM.getRelocationModel() != Reloc::Static && -      TM.getTargetData()->getPointerSize() == 32) -    SixteenByteConstantSection =   // .literal16 -      getContext().getMachOSection("__TEXT", "__literal16", -                                   MCSectionMachO::S_16BYTE_LITERALS, -                                   SectionKind::getMergeableConst16()); - -  ReadOnlySection  // .const -    = getContext().getMachOSection("__TEXT", "__const", 0, -                                   SectionKind::getReadOnly()); - -  TextCoalSection -    = getContext().getMachOSection("__TEXT", "__textcoal_nt", -                                   MCSectionMachO::S_COALESCED | -                                   MCSectionMachO::S_ATTR_PURE_INSTRUCTIONS, -                                   SectionKind::getText()); -  ConstTextCoalSection -    = getContext().getMachOSection("__TEXT", "__const_coal", -                                   MCSectionMachO::S_COALESCED, -                                   SectionKind::getReadOnly()); -  ConstDataSection  // .const_data -    = getContext().getMachOSection("__DATA", "__const", 0, -                                   SectionKind::getReadOnlyWithRel()); -  DataCoalSection -    = getContext().getMachOSection("__DATA","__datacoal_nt", -                                   MCSectionMachO::S_COALESCED, -                                   SectionKind::getDataRel()); -  DataCommonSection -    = getContext().getMachOSection("__DATA","__common", -                                   MCSectionMachO::S_ZEROFILL, -                                   SectionKind::getBSS()); -  DataBSSSection -    = getContext().getMachOSection("__DATA","__bss", MCSectionMachO::S_ZEROFILL, -                                   SectionKind::getBSS()); - - -  LazySymbolPointerSection -    = getContext().getMachOSection("__DATA", "__la_symbol_ptr", -                                   MCSectionMachO::S_LAZY_SYMBOL_POINTERS, -                                   SectionKind::getMetadata()); -  NonLazySymbolPointerSection -    = getContext().getMachOSection("__DATA", "__nl_symbol_ptr", -                                   MCSectionMachO::S_NON_LAZY_SYMBOL_POINTERS, -                                   SectionKind::getMetadata()); - -  if (TM.getRelocationModel() == Reloc::Static) { -    StaticCtorSection -      = getContext().getMachOSection("__TEXT", "__constructor", 0, -                                     SectionKind::getDataRel()); -    StaticDtorSection -      = getContext().getMachOSection("__TEXT", "__destructor", 0, -                                     SectionKind::getDataRel()); -  } else { -    StaticCtorSection -      = getContext().getMachOSection("__DATA", "__mod_init_func", -                                     MCSectionMachO::S_MOD_INIT_FUNC_POINTERS, -                                     SectionKind::getDataRel()); -    StaticDtorSection -      = getContext().getMachOSection("__DATA", "__mod_term_func", -                                     MCSectionMachO::S_MOD_TERM_FUNC_POINTERS, -                                     SectionKind::getDataRel()); -  } - -  // Exception Handling. -  LSDASection = getContext().getMachOSection("__TEXT", "__gcc_except_tab", 0, -                                             SectionKind::getReadOnlyWithRel()); - -  if (T.isMacOSX() && !T.isMacOSXVersionLT(10, 6)) -    CompactUnwindSection = -      getContext().getMachOSection("__LD", "__compact_unwind", -                                   MCSectionMachO::S_ATTR_DEBUG, -                                   SectionKind::getReadOnly()); - -  // Debug Information. -  DwarfAbbrevSection = -    getContext().getMachOSection("__DWARF", "__debug_abbrev", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfInfoSection = -    getContext().getMachOSection("__DWARF", "__debug_info", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfLineSection = -    getContext().getMachOSection("__DWARF", "__debug_line", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfFrameSection = -    getContext().getMachOSection("__DWARF", "__debug_frame", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfPubNamesSection = -    getContext().getMachOSection("__DWARF", "__debug_pubnames", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfPubTypesSection = -    getContext().getMachOSection("__DWARF", "__debug_pubtypes", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfStrSection = -    getContext().getMachOSection("__DWARF", "__debug_str", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfLocSection = -    getContext().getMachOSection("__DWARF", "__debug_loc", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfARangesSection = -    getContext().getMachOSection("__DWARF", "__debug_aranges", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfRangesSection = -    getContext().getMachOSection("__DWARF", "__debug_ranges", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfMacroInfoSection = -    getContext().getMachOSection("__DWARF", "__debug_macinfo", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); -  DwarfDebugInlineSection = -    getContext().getMachOSection("__DWARF", "__debug_inlined", -                                 MCSectionMachO::S_ATTR_DEBUG, -                                 SectionKind::getMetadata()); - -  TLSExtraDataSection = TLSTLVSection; -} - -const MCSection *TargetLoweringObjectFileMachO::getEHFrameSection() const { -  return getContext().getMachOSection("__TEXT", "__eh_frame", -                                      MCSectionMachO::S_COALESCED | -                                      MCSectionMachO::S_ATTR_NO_TOC | -                                      MCSectionMachO::S_ATTR_STRIP_STATIC_SYMS | -                                      MCSectionMachO::S_ATTR_LIVE_SUPPORT, -                                      SectionKind::getReadOnly()); -} -  const MCSection *TargetLoweringObjectFileMachO::  getExplicitSectionGlobal(const GlobalValue *GV, SectionKind Kind,                           Mangler *Mang, const TargetMachine &TM) const { @@ -905,183 +543,10 @@ getCFIPersonalitySymbol(const GlobalValue *GV, Mangler *Mang,    return SSym;  } -unsigned TargetLoweringObjectFileMachO::getPersonalityEncoding() const { -  return DW_EH_PE_indirect | DW_EH_PE_pcrel | DW_EH_PE_sdata4; -} - -unsigned TargetLoweringObjectFileMachO::getLSDAEncoding() const { -  return DW_EH_PE_pcrel; -} - -unsigned TargetLoweringObjectFileMachO::getFDEEncoding(bool CFI) const { -  return DW_EH_PE_pcrel; -} - -unsigned TargetLoweringObjectFileMachO::getTTypeEncoding() const { -  return DW_EH_PE_indirect | DW_EH_PE_pcrel | DW_EH_PE_sdata4; -} -  //===----------------------------------------------------------------------===//  //                                  COFF  //===----------------------------------------------------------------------===// -TargetLoweringObjectFileCOFF::TargetLoweringObjectFileCOFF() -  : TargetLoweringObjectFile(), -    DrectveSection(0), -    PDataSection(0), -    XDataSection(0) { -} - -void TargetLoweringObjectFileCOFF::Initialize(MCContext &Ctx, -                                              const TargetMachine &TM) { -  TargetLoweringObjectFile::Initialize(Ctx, TM); -  TextSection = -    getContext().getCOFFSection(".text", -                                COFF::IMAGE_SCN_CNT_CODE | -                                COFF::IMAGE_SCN_MEM_EXECUTE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getText()); -  DataSection = -    getContext().getCOFFSection(".data", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ | -                                COFF::IMAGE_SCN_MEM_WRITE, -                                SectionKind::getDataRel()); -  ReadOnlySection = -    getContext().getCOFFSection(".rdata", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getReadOnly()); -  StaticCtorSection = -    getContext().getCOFFSection(".ctors", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ | -                                COFF::IMAGE_SCN_MEM_WRITE, -                                SectionKind::getDataRel()); -  StaticDtorSection = -    getContext().getCOFFSection(".dtors", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ | -                                COFF::IMAGE_SCN_MEM_WRITE, -                                SectionKind::getDataRel()); - -  // FIXME: We're emitting LSDA info into a readonly section on COFF, even -  // though it contains relocatable pointers.  In PIC mode, this is probably a -  // big runtime hit for C++ apps.  Either the contents of the LSDA need to be -  // adjusted or this should be a data section. -  LSDASection = -    getContext().getCOFFSection(".gcc_except_table", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getReadOnly()); -  // Debug info. -  DwarfAbbrevSection = -    getContext().getCOFFSection(".debug_abbrev", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfInfoSection = -    getContext().getCOFFSection(".debug_info", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfLineSection = -    getContext().getCOFFSection(".debug_line", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfFrameSection = -    getContext().getCOFFSection(".debug_frame", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfPubNamesSection = -    getContext().getCOFFSection(".debug_pubnames", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfPubTypesSection = -    getContext().getCOFFSection(".debug_pubtypes", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfStrSection = -    getContext().getCOFFSection(".debug_str", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfLocSection = -    getContext().getCOFFSection(".debug_loc", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfARangesSection = -    getContext().getCOFFSection(".debug_aranges", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfRangesSection = -    getContext().getCOFFSection(".debug_ranges", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); -  DwarfMacroInfoSection = -    getContext().getCOFFSection(".debug_macinfo", -                                COFF::IMAGE_SCN_MEM_DISCARDABLE | -                                COFF::IMAGE_SCN_MEM_READ, -                                SectionKind::getMetadata()); - -  DrectveSection = -    getContext().getCOFFSection(".drectve", -                                COFF::IMAGE_SCN_LNK_INFO, -                                SectionKind::getMetadata()); - -  PDataSection = -    getContext().getCOFFSection(".pdata", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ | -                                COFF::IMAGE_SCN_MEM_WRITE, -                                SectionKind::getDataRel()); - -  XDataSection = -    getContext().getCOFFSection(".xdata", -                                COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                COFF::IMAGE_SCN_MEM_READ | -                                COFF::IMAGE_SCN_MEM_WRITE, -                                SectionKind::getDataRel()); -} - -const MCSection *TargetLoweringObjectFileCOFF::getEHFrameSection() const { -  return getContext().getCOFFSection(".eh_frame", -                                     COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                     COFF::IMAGE_SCN_MEM_READ | -                                     COFF::IMAGE_SCN_MEM_WRITE, -                                     SectionKind::getDataRel()); -} - -const MCSection *TargetLoweringObjectFileCOFF::getWin64EHFuncTableSection( -                                                       StringRef suffix) const { -  if (suffix == "") -    return PDataSection; -  return getContext().getCOFFSection((".pdata"+suffix).str(), -                                     COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                     COFF::IMAGE_SCN_MEM_READ | -                                     COFF::IMAGE_SCN_MEM_WRITE, -                                     SectionKind::getDataRel()); -} - -const MCSection *TargetLoweringObjectFileCOFF::getWin64EHTableSection( -                                                       StringRef suffix) const { -  if (suffix == "") -    return XDataSection; -  return getContext().getCOFFSection((".xdata"+suffix).str(), -                                     COFF::IMAGE_SCN_CNT_INITIALIZED_DATA | -                                     COFF::IMAGE_SCN_MEM_READ | -                                     COFF::IMAGE_SCN_MEM_WRITE, -                                     SectionKind::getDataRel()); -} - -  static unsigned  getCOFFSectionFlags(SectionKind K) {    unsigned Flags = 0; | 
