Home | History | Annotate | Download | only in DWARF
      1 //===- DWARFCompileUnit.h ---------------------------------------*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 
     10 #ifndef LLVM_DEBUGINFO_DWARFCOMPILEUNIT_H
     11 #define LLVM_DEBUGINFO_DWARFCOMPILEUNIT_H
     12 
     13 #include "llvm/DebugInfo/DWARF/DWARFUnit.h"
     14 #include "llvm/DebugInfo/DWARF/DWARFUnitIndex.h"
     15 
     16 namespace llvm {
     17 
     18 class DWARFCompileUnit : public DWARFUnit {
     19 public:
     20   DWARFCompileUnit(DWARFContext &Context, const DWARFSection &Section,
     21                    const DWARFDebugAbbrev *DA, const DWARFSection *RS,
     22                    StringRef SS, const DWARFSection &SOS,
     23                    const DWARFSection *AOS, const DWARFSection &LS, bool LE,
     24                    bool IsDWO, const DWARFUnitSectionBase &UnitSection,
     25                    const DWARFUnitIndex::Entry *Entry)
     26       : DWARFUnit(Context, Section, DA, RS, SS, SOS, AOS, LS, LE, IsDWO,
     27                   UnitSection, Entry) {}
     28 
     29   // VTable anchor.
     30   ~DWARFCompileUnit() override;
     31 
     32   void dump(raw_ostream &OS, DIDumpOptions DumpOpts);
     33 
     34   static const DWARFSectionKind Section = DW_SECT_INFO;
     35 };
     36 
     37 } // end namespace llvm
     38 
     39 #endif // LLVM_DEBUGINFO_DWARFCOMPILEUNIT_H
     40