From 71d5a2540a98c81f5bcaeb48805e0e2881f530ef Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Sun, 16 Apr 2017 16:01:22 +0000 Subject: Vendor import of llvm trunk r300422: https://llvm.org/svn/llvm-project/llvm/trunk@300422 --- include/llvm/DebugInfo/PDB/Raw/PDBFile.h | 133 ------------------------------- 1 file changed, 133 deletions(-) delete mode 100644 include/llvm/DebugInfo/PDB/Raw/PDBFile.h (limited to 'include/llvm/DebugInfo/PDB/Raw/PDBFile.h') diff --git a/include/llvm/DebugInfo/PDB/Raw/PDBFile.h b/include/llvm/DebugInfo/PDB/Raw/PDBFile.h deleted file mode 100644 index 29f5b2163d83f..0000000000000 --- a/include/llvm/DebugInfo/PDB/Raw/PDBFile.h +++ /dev/null @@ -1,133 +0,0 @@ -//===- PDBFile.h - Low level interface to a PDB file ------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -#ifndef LLVM_DEBUGINFO_PDB_RAW_PDBFILE_H -#define LLVM_DEBUGINFO_PDB_RAW_PDBFILE_H - -#include "llvm/ADT/DenseMap.h" -#include "llvm/DebugInfo/MSF/IMSFFile.h" -#include "llvm/DebugInfo/MSF/MSFCommon.h" -#include "llvm/DebugInfo/MSF/StreamArray.h" -#include "llvm/DebugInfo/MSF/StreamInterface.h" -#include "llvm/Support/Allocator.h" -#include "llvm/Support/Endian.h" -#include "llvm/Support/Error.h" -#include "llvm/Support/MathExtras.h" - -#include - -namespace llvm { - -namespace msf { -class MappedBlockStream; -} - -namespace pdb { -class DbiStream; -class GlobalsStream; -class InfoStream; -class NameHashTable; -class PDBFileBuilder; -class PublicsStream; -class SymbolStream; -class TpiStream; - -class PDBFile : public msf::IMSFFile { - friend PDBFileBuilder; - -public: - PDBFile(std::unique_ptr PdbFileBuffer, - BumpPtrAllocator &Allocator); - ~PDBFile() override; - - uint32_t getFreeBlockMapBlock() const; - uint32_t getUnknown1() const; - - uint32_t getBlockSize() const override; - uint32_t getBlockCount() const override; - uint32_t getNumDirectoryBytes() const; - uint32_t getBlockMapIndex() const; - uint32_t getNumDirectoryBlocks() const; - uint64_t getBlockMapOffset() const; - - uint32_t getNumStreams() const override; - uint32_t getStreamByteSize(uint32_t StreamIndex) const override; - ArrayRef - getStreamBlockList(uint32_t StreamIndex) const override; - uint32_t getFileSize() const; - - Expected> getBlockData(uint32_t BlockIndex, - uint32_t NumBytes) const override; - Error setBlockData(uint32_t BlockIndex, uint32_t Offset, - ArrayRef Data) const override; - - ArrayRef getFpmPages() const { return FpmPages; } - - ArrayRef getStreamSizes() const { - return ContainerLayout.StreamSizes; - } - ArrayRef> getStreamMap() const { - return ContainerLayout.StreamMap; - } - - const msf::MSFLayout &getMsfLayout() const { return ContainerLayout; } - const msf::ReadableStream &getMsfBuffer() const { return *Buffer; } - - ArrayRef getDirectoryBlockArray() const; - - Error parseFileHeaders(); - Error parseStreamData(); - - Expected getPDBInfoStream(); - Expected getPDBDbiStream(); - Expected getPDBGlobalsStream(); - Expected getPDBTpiStream(); - Expected getPDBIpiStream(); - Expected getPDBPublicsStream(); - Expected getPDBSymbolStream(); - Expected getStringTable(); - - BumpPtrAllocator &getAllocator() { return Allocator; } - - bool hasPDBDbiStream() const; - bool hasPDBGlobalsStream(); - bool hasPDBInfoStream(); - bool hasPDBIpiStream() const; - bool hasPDBPublicsStream(); - bool hasPDBSymbolStream(); - bool hasPDBTpiStream() const; - bool hasStringTable(); - - private: - Expected> safelyCreateIndexedStream( - const msf::MSFLayout &Layout, const msf::ReadableStream &MsfData, - uint32_t StreamIndex) const; - - BumpPtrAllocator &Allocator; - - std::unique_ptr Buffer; - - std::vector FpmPages; - msf::MSFLayout ContainerLayout; - - std::unique_ptr Globals; - std::unique_ptr Info; - std::unique_ptr Dbi; - std::unique_ptr Tpi; - std::unique_ptr Ipi; - std::unique_ptr Publics; - std::unique_ptr Symbols; - std::unique_ptr DirectoryStream; - std::unique_ptr StringTableStream; - std::unique_ptr StringTable; -}; -} -} - -#endif -- cgit v1.2.3