llvm/lldb/source/Plugins/SymbolFile/NativePDB/PdbIndex.cpp

//===-- PdbIndex.cpp ------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "PdbIndex.h"
#include "PdbUtil.h"

#include "llvm/DebugInfo/CodeView/SymbolDeserializer.h"
#include "llvm/DebugInfo/PDB/Native/DbiStream.h"
#include "llvm/DebugInfo/PDB/Native/GlobalsStream.h"
#include "llvm/DebugInfo/PDB/Native/ISectionContribVisitor.h"
#include "llvm/DebugInfo/PDB/Native/PDBFile.h"
#include "llvm/DebugInfo/PDB/Native/PublicsStream.h"
#include "llvm/DebugInfo/PDB/Native/SymbolStream.h"
#include "llvm/DebugInfo/PDB/Native/TpiStream.h"
#include "llvm/Object/COFF.h"
#include "llvm/Support/Error.h"

#include "lldb/Utility/LLDBAssert.h"
#include "lldb/lldb-defines.h"
#include <optional>

usingnamespacelldb_private;
usingnamespacelldb_private::npdb;
usingnamespacellvm::codeview;
usingnamespacellvm::pdb;

PdbIndex::PdbIndex() :{}

#define ASSIGN_PTR_OR_RETURN(result_ptr, expr)

llvm::Expected<std::unique_ptr<PdbIndex>>
PdbIndex::create(llvm::pdb::PDBFile *file) {}

lldb::addr_t PdbIndex::MakeVirtualAddress(uint16_t segment,
                                          uint32_t offset) const {}

std::optional<uint16_t> PdbIndex::GetModuleIndexForAddr(uint16_t segment,
                                                        uint32_t offset) const {}

std::optional<uint16_t> PdbIndex::GetModuleIndexForVa(lldb::addr_t va) const {}

void PdbIndex::ParseSectionContribs() {}

void PdbIndex::BuildAddrToSymbolMap(CompilandIndexItem &cci) {}

std::vector<SymbolAndUid> PdbIndex::FindSymbolsByVa(lldb::addr_t va) {}

CVSymbol PdbIndex::ReadSymbolRecord(PdbCompilandSymId cu_sym) const {}

CVSymbol PdbIndex::ReadSymbolRecord(PdbGlobalSymId global) const {}