1 //===-- SymbolFileDWARFDwoDwp.cpp -------------------------------*- 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 #include "SymbolFileDWARFDwoDwp.h"
11
12 #include "lldb/Core/Section.h"
13 #include "lldb/Expression/DWARFExpression.h"
14 #include "lldb/Symbol/ObjectFile.h"
15 #include "lldb/Utility/LLDBAssert.h"
16
17 #include "DWARFUnit.h"
18 #include "DWARFDebugInfo.h"
19
20 using namespace lldb;
21 using namespace lldb_private;
22
SymbolFileDWARFDwoDwp(SymbolFileDWARFDwp * dwp_symfile,ObjectFileSP objfile,DWARFUnit * dwarf_cu,uint64_t dwo_id)23 SymbolFileDWARFDwoDwp::SymbolFileDWARFDwoDwp(SymbolFileDWARFDwp *dwp_symfile,
24 ObjectFileSP objfile,
25 DWARFUnit *dwarf_cu,
26 uint64_t dwo_id)
27 : SymbolFileDWARFDwo(objfile, dwarf_cu), m_dwp_symfile(dwp_symfile),
28 m_dwo_id(dwo_id) {}
29
LoadSectionData(lldb::SectionType sect_type,DWARFDataExtractor & data)30 void SymbolFileDWARFDwoDwp::LoadSectionData(lldb::SectionType sect_type,
31 DWARFDataExtractor &data) {
32 if (m_dwp_symfile->LoadSectionData(m_dwo_id, sect_type, data))
33 return;
34
35 SymbolFileDWARF::LoadSectionData(sect_type, data);
36 }
37