aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2019-12-20 19:53:05 +0000
committerDimitry Andric <dim@FreeBSD.org>2019-12-20 19:53:05 +0000
commit0b57cec536236d46e3dba9bd041533462f33dbb7 (patch)
tree56229dbdbbf76d18580f72f789003db17246c8d9 /contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
parent718ef55ec7785aae63f98f8ca05dc07ed399c16d (diff)
Notes
Diffstat (limited to 'contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp')
-rw-r--r--contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp227
1 files changed, 0 insertions, 227 deletions
diff --git a/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp b/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
deleted file mode 100644
index 8a49cb1c5963..000000000000
--- a/contrib/llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
+++ /dev/null
@@ -1,227 +0,0 @@
-//===- NativeSession.cpp - Native implementation of IPDBSession -*- C++ -*-===//
-//
-// 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 "llvm/DebugInfo/PDB/Native/NativeSession.h"
-
-#include "llvm/ADT/STLExtras.h"
-#include "llvm/DebugInfo/CodeView/TypeIndex.h"
-#include "llvm/DebugInfo/PDB/IPDBEnumChildren.h"
-#include "llvm/DebugInfo/PDB/IPDBSourceFile.h"
-#include "llvm/DebugInfo/PDB/Native/NativeCompilandSymbol.h"
-#include "llvm/DebugInfo/PDB/Native/NativeEnumInjectedSources.h"
-#include "llvm/DebugInfo/PDB/Native/NativeEnumTypes.h"
-#include "llvm/DebugInfo/PDB/Native/NativeExeSymbol.h"
-#include "llvm/DebugInfo/PDB/Native/NativeTypeBuiltin.h"
-#include "llvm/DebugInfo/PDB/Native/NativeTypeEnum.h"
-#include "llvm/DebugInfo/PDB/Native/PDBFile.h"
-#include "llvm/DebugInfo/PDB/Native/RawError.h"
-#include "llvm/DebugInfo/PDB/Native/SymbolCache.h"
-#include "llvm/DebugInfo/PDB/Native/TpiStream.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolCompiland.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolExe.h"
-#include "llvm/DebugInfo/PDB/PDBSymbolTypeEnum.h"
-#include "llvm/Support/Allocator.h"
-#include "llvm/Support/BinaryByteStream.h"
-#include "llvm/Support/Error.h"
-#include "llvm/Support/ErrorOr.h"
-#include "llvm/Support/MemoryBuffer.h"
-
-#include <algorithm>
-#include <cassert>
-#include <memory>
-#include <utility>
-
-using namespace llvm;
-using namespace llvm::msf;
-using namespace llvm::pdb;
-
-static DbiStream *getDbiStreamPtr(PDBFile &File) {
- Expected<DbiStream &> DbiS = File.getPDBDbiStream();
- if (DbiS)
- return &DbiS.get();
-
- consumeError(DbiS.takeError());
- return nullptr;
-}
-
-NativeSession::NativeSession(std::unique_ptr<PDBFile> PdbFile,
- std::unique_ptr<BumpPtrAllocator> Allocator)
- : Pdb(std::move(PdbFile)), Allocator(std::move(Allocator)),
- Cache(*this, getDbiStreamPtr(*Pdb)) {}
-
-NativeSession::~NativeSession() = default;
-
-Error NativeSession::createFromPdb(std::unique_ptr<MemoryBuffer> Buffer,
- std::unique_ptr<IPDBSession> &Session) {
- StringRef Path = Buffer->getBufferIdentifier();
- auto Stream = llvm::make_unique<MemoryBufferByteStream>(
- std::move(Buffer), llvm::support::little);
-
- auto Allocator = llvm::make_unique<BumpPtrAllocator>();
- auto File = llvm::make_unique<PDBFile>(Path, std::move(Stream), *Allocator);
- if (auto EC = File->parseFileHeaders())
- return EC;
- if (auto EC = File->parseStreamData())
- return EC;
-
- Session =
- llvm::make_unique<NativeSession>(std::move(File), std::move(Allocator));
-
- return Error::success();
-}
-
-Error NativeSession::createFromExe(StringRef Path,
- std::unique_ptr<IPDBSession> &Session) {
- return make_error<RawError>(raw_error_code::feature_unsupported);
-}
-
-uint64_t NativeSession::getLoadAddress() const { return 0; }
-
-bool NativeSession::setLoadAddress(uint64_t Address) { return false; }
-
-std::unique_ptr<PDBSymbolExe> NativeSession::getGlobalScope() {
- return PDBSymbol::createAs<PDBSymbolExe>(*this, getNativeGlobalScope());
-}
-
-std::unique_ptr<PDBSymbol>
-NativeSession::getSymbolById(SymIndexId SymbolId) const {
- return Cache.getSymbolById(SymbolId);
-}
-
-bool NativeSession::addressForVA(uint64_t VA, uint32_t &Section,
- uint32_t &Offset) const {
- return false;
-}
-
-bool NativeSession::addressForRVA(uint32_t VA, uint32_t &Section,
- uint32_t &Offset) const {
- return false;
-}
-
-std::unique_ptr<PDBSymbol>
-NativeSession::findSymbolByAddress(uint64_t Address, PDB_SymType Type) const {
- return nullptr;
-}
-
-std::unique_ptr<PDBSymbol>
-NativeSession::findSymbolByRVA(uint32_t RVA, PDB_SymType Type) const {
- return nullptr;
-}
-
-std::unique_ptr<PDBSymbol>
-NativeSession::findSymbolBySectOffset(uint32_t Sect, uint32_t Offset,
- PDB_SymType Type) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumLineNumbers>
-NativeSession::findLineNumbers(const PDBSymbolCompiland &Compiland,
- const IPDBSourceFile &File) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumLineNumbers>
-NativeSession::findLineNumbersByAddress(uint64_t Address,
- uint32_t Length) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumLineNumbers>
-NativeSession::findLineNumbersByRVA(uint32_t RVA, uint32_t Length) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumLineNumbers>
-NativeSession::findLineNumbersBySectOffset(uint32_t Section, uint32_t Offset,
- uint32_t Length) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumSourceFiles>
-NativeSession::findSourceFiles(const PDBSymbolCompiland *Compiland,
- StringRef Pattern,
- PDB_NameSearchFlags Flags) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBSourceFile>
-NativeSession::findOneSourceFile(const PDBSymbolCompiland *Compiland,
- StringRef Pattern,
- PDB_NameSearchFlags Flags) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumChildren<PDBSymbolCompiland>>
-NativeSession::findCompilandsForSourceFile(StringRef Pattern,
- PDB_NameSearchFlags Flags) const {
- return nullptr;
-}
-
-std::unique_ptr<PDBSymbolCompiland>
-NativeSession::findOneCompilandForSourceFile(StringRef Pattern,
- PDB_NameSearchFlags Flags) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumSourceFiles> NativeSession::getAllSourceFiles() const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumSourceFiles> NativeSession::getSourceFilesForCompiland(
- const PDBSymbolCompiland &Compiland) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBSourceFile>
-NativeSession::getSourceFileById(uint32_t FileId) const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumDataStreams> NativeSession::getDebugStreams() const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumTables> NativeSession::getEnumTables() const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumInjectedSources>
-NativeSession::getInjectedSources() const {
- auto ISS = Pdb->getInjectedSourceStream();
- if (!ISS) {
- consumeError(ISS.takeError());
- return nullptr;
- }
- auto Strings = Pdb->getStringTable();
- if (!Strings) {
- consumeError(Strings.takeError());
- return nullptr;
- }
- return make_unique<NativeEnumInjectedSources>(*Pdb, *ISS, *Strings);
-}
-
-std::unique_ptr<IPDBEnumSectionContribs>
-NativeSession::getSectionContribs() const {
- return nullptr;
-}
-
-std::unique_ptr<IPDBEnumFrameData>
-NativeSession::getFrameData() const {
- return nullptr;
-}
-
-void NativeSession::initializeExeSymbol() {
- if (ExeSymbol == 0)
- ExeSymbol = Cache.createSymbol<NativeExeSymbol>();
-}
-
-NativeExeSymbol &NativeSession::getNativeGlobalScope() const {
- const_cast<NativeSession &>(*this).initializeExeSymbol();
-
- return Cache.getNativeSymbolById<NativeExeSymbol>(ExeSymbol);
-}