1 //===-- DWARFIndex.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 "Plugins/SymbolFile/DWARF/DWARFIndex.h" 11 #include "Plugins/SymbolFile/DWARF/DWARFDIE.h" 12 #include "Plugins/SymbolFile/DWARF/DWARFDebugInfo.h" 13 14 using namespace lldb_private; 15 using namespace lldb; 16 17 DWARFIndex::~DWARFIndex() = default; 18 19 void DWARFIndex::ParseFunctions( 20 const DIEArray &offsets, DWARFDebugInfo &info, 21 llvm::function_ref<bool(const DWARFDIE &die, bool include_inlines, 22 lldb_private::SymbolContextList &sc_list)> 23 resolve_function, 24 bool include_inlines, SymbolContextList &sc_list) { 25 const size_t num_matches = offsets.size(); 26 for (size_t i = 0; i < num_matches; ++i) { 27 DWARFDIE die = info.GetDIE(offsets[i]); 28 if (die) 29 resolve_function(die, include_inlines, sc_list); 30 } 31 } 32