Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-05-10 08:43:41

0001 //===- DWARFCompileUnit.h ---------------------------------------*- C++ -*-===//
0002 //
0003 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0004 // See https://llvm.org/LICENSE.txt for license information.
0005 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0006 //
0007 //===----------------------------------------------------------------------===//
0008 
0009 #ifndef LLVM_DEBUGINFO_DWARF_DWARFCOMPILEUNIT_H
0010 #define LLVM_DEBUGINFO_DWARF_DWARFCOMPILEUNIT_H
0011 
0012 #include "llvm/DebugInfo/DWARF/DWARFUnit.h"
0013 
0014 namespace llvm {
0015 
0016 class DWARFContext;
0017 class DWARFDebugAbbrev;
0018 class raw_ostream;
0019 struct DIDumpOptions;
0020 struct DWARFSection;
0021 
0022 class DWARFCompileUnit : public DWARFUnit {
0023 public:
0024   DWARFCompileUnit(DWARFContext &Context, const DWARFSection &Section,
0025                    const DWARFUnitHeader &Header, const DWARFDebugAbbrev *DA,
0026                    const DWARFSection *RS, const DWARFSection *LocSection,
0027                    StringRef SS, const DWARFSection &SOS,
0028                    const DWARFSection *AOS, const DWARFSection &LS, bool LE,
0029                    bool IsDWO, const DWARFUnitVector &UnitVector)
0030       : DWARFUnit(Context, Section, Header, DA, RS, LocSection, SS, SOS, AOS,
0031                   LS, LE, IsDWO, UnitVector) {}
0032 
0033   /// VTable anchor.
0034   ~DWARFCompileUnit() override;
0035   /// Dump this compile unit to \p OS.
0036   void dump(raw_ostream &OS, DIDumpOptions DumpOpts) override;
0037   /// Enable LLVM-style RTTI.
0038   static bool classof(const DWARFUnit *U) { return !U->isTypeUnit(); }
0039 };
0040 
0041 } // end namespace llvm
0042 
0043 #endif // LLVM_DEBUGINFO_DWARF_DWARFCOMPILEUNIT_H