LLVM  4.0.0
DWARFTypeUnit.h
Go to the documentation of this file.
1 //===-- DWARFTypeUnit.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_LIB_DEBUGINFO_DWARFTYPEUNIT_H
11 #define LLVM_LIB_DEBUGINFO_DWARFTYPEUNIT_H
12 
14 
15 namespace llvm {
16 
17 class DWARFTypeUnit : public DWARFUnit {
18 private:
19  uint64_t TypeHash;
20  uint32_t TypeOffset;
21 public:
23  const DWARFDebugAbbrev *DA, StringRef RS, StringRef SS,
24  StringRef SOS, StringRef AOS, StringRef LS, bool LE, bool IsDWO,
25  const DWARFUnitSectionBase &UnitSection,
26  const DWARFUnitIndex::Entry *Entry)
27  : DWARFUnit(Context, Section, DA, RS, SS, SOS, AOS, LS, LE, IsDWO,
28  UnitSection, Entry) {}
29  uint32_t getHeaderSize() const override {
30  return DWARFUnit::getHeaderSize() + 12;
31  }
32  void dump(raw_ostream &OS, bool Brief = false);
34 
35 protected:
36  bool extractImpl(DataExtractor debug_info, uint32_t *offset_ptr) override;
37 };
38 
39 }
40 
41 #endif
42 
virtual uint32_t getHeaderSize() const
Size in bytes of the unit header.
Definition: DWARFUnit.h:155
DWARFTypeUnit(DWARFContext &Context, const DWARFSection &Section, const DWARFDebugAbbrev *DA, StringRef RS, StringRef SS, StringRef SOS, StringRef AOS, StringRef LS, bool LE, bool IsDWO, const DWARFUnitSectionBase &UnitSection, const DWARFUnitIndex::Entry *Entry)
Definition: DWARFTypeUnit.h:22
static const DWARFSectionKind Section
Definition: DWARFTypeUnit.h:33
bool extractImpl(DataExtractor debug_info, uint32_t *offset_ptr) override
DWARFSectionKind
DWARFContext This data structure is the top level entity that deals with dwarf debug information pars...
Definition: DWARFContext.h:52
uint32_t getHeaderSize() const override
Size in bytes of the unit header.
Definition: DWARFTypeUnit.h:29
void dump(raw_ostream &OS, bool Brief=false)
Base class for all DWARFUnitSection classes.
Definition: DWARFUnit.h:39
This class implements an extremely fast bulk output stream that can only output to a stream...
Definition: raw_ostream.h:44
StringRef - Represent a constant reference to a string, i.e.
Definition: StringRef.h:47