9#ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_NATIVEPDB_COMPILEUNITINDEX_H
10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_NATIVEPDB_COMPILEUNITINDEX_H
13#include "llvm/ADT/DenseMap.h"
14#include "llvm/ADT/DenseSet.h"
15#include "llvm/ADT/IntervalMap.h"
16#include "llvm/ADT/SmallString.h"
17#include "llvm/DebugInfo/CodeView/DebugInlineeLinesSubsection.h"
18#include "llvm/DebugInfo/CodeView/StringsAndChecksums.h"
19#include "llvm/DebugInfo/CodeView/SymbolRecord.h"
20#include "llvm/DebugInfo/CodeView/TypeIndex.h"
21#include "llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h"
22#include "llvm/DebugInfo/PDB/Native/ModuleDebugStream.h"
23#include "llvm/DebugInfo/PDB/PDBTypes.h"
42 llvm::pdb::ModuleDebugStreamRef debug_stream,
43 llvm::pdb::DbiModuleDescriptor descriptor);
77 std::map<llvm::codeview::TypeIndex, llvm::codeview::InlineeSourceLine>
84 std::pair<uint32_t, uint32_t>>;
92 llvm::DenseMap<uint16_t, std::unique_ptr<CompilandIndexItem>>
m_comp_units;
Indexes information about all compile units.
llvm::DenseMap< uint16_t, std::unique_ptr< CompilandIndexItem > > m_comp_units
CompilandIndexItem & GetOrCreateCompiland(uint16_t modi)
llvm::SmallString< 64 > GetMainSourceFile(const CompilandIndexItem &item) const
const CompilandIndexItem * GetCompiland(uint16_t modi) const
CompileUnitIndex(PdbIndex &index)
PdbIndex - Lazy access to the important parts of a PDB file.
A class that represents a running process on the host machine.
Represents a single compile unit.
llvm::pdb::DbiModuleDescriptor m_module_descriptor
std::map< llvm::codeview::TypeIndex, llvm::codeview::InlineeSourceLine > m_inline_map
llvm::SmallVector< llvm::codeview::TypeIndex, 5 > m_build_info
std::optional< llvm::codeview::ObjNameSym > m_obj_name
std::optional< llvm::codeview::Compile3Sym > m_compile_opts
llvm::pdb::ModuleDebugStreamRef m_debug_stream
std::map< lldb::addr_t, PdbSymUid > m_symbols_by_va
GlobalLineTable m_global_line_table
llvm::codeview::StringsAndChecksumsRef m_strings
std::vector< llvm::StringRef > m_file_list