Lines Matching full:pdb
17 #include "llvm/DebugInfo/PDB/Native/DbiStream.h"
18 #include "llvm/DebugInfo/PDB/Native/FormatUtil.h"
19 #include "llvm/DebugInfo/PDB/Native/InfoStream.h"
20 #include "llvm/DebugInfo/PDB/Native/InputFile.h"
21 #include "llvm/DebugInfo/PDB/Native/NativeSession.h"
22 #include "llvm/DebugInfo/PDB/Native/PDBFile.h"
23 #include "llvm/DebugInfo/PDB/Native/RawTypes.h"
32 using namespace llvm::pdb;
93 return FileOffset / File.pdb().getBlockSize();
97 uint64_t BlockStart = pdbBlockIndex() * File.pdb().getBlockSize();
107 return ((pdbBlockIndex() - 1) % File.pdb().getBlockSize() == 0);
110 return ((pdbBlockIndex() - 2) % File.pdb().getBlockSize() == 0);
118 return pdbBlockIndex() == File.pdb().getBlockMapIndex();
122 const auto &Layout = File.pdb().getMsfLayout();
127 const auto &Layout = File.pdb().getMsfLayout();
137 if (FileOffset >= File.pdb().getFileSize()) {
139 FileOffset, File.pdb().getFileSize());
145 bool IsFree = File.pdb().getMsfLayout().FreePageMap[pdbBlockIndex()];
161 uint32_t(File.pdb().getMsfLayout().SB->BlockSize));
165 uint32_t(File.pdb().getMsfLayout().SB->FreeBlockMapBlock));
169 uint32_t(File.pdb().getMsfLayout().SB->NumBlocks));
173 uint32_t(File.pdb().getMsfLayout().SB->NumDirectoryBytes));
177 uint32_t(File.pdb().getMsfLayout().SB->Unknown1));
181 uint32_t(File.pdb().getMsfLayout().SB->BlockMapAddr));
200 const MSFLayout &Layout = File.pdb().getMsfLayout();
206 uint32_t FpmChunk = pdbBlockIndex() / File.pdb().getBlockSize();
212 8 * (FpmChunk * File.pdb().getBlockSize() + pdbBlockOffset());
213 if (DescribedBlockStart > File.pdb().getBlockCount()) {
221 cantFail(File.pdb().getMsfBuffer().readBytes(FileOffset, 1, Bytes));
227 uint64_t BlockMapOffset = File.pdb().getBlockMapOffset();
246 discoverStreamPurposes(File.pdb(), Streams);
250 const auto &Layout = File.pdb().getStreamLayout(Stream);
252 getOffsetInStream(Layout.Blocks, FileOffset, File.pdb().getBlockSize());
258 DbiStream &Dbi = cantFail(File.pdb().getPDBDbiStream());
262 case StreamPurpose::PDB: {
263 InfoStream &Info = cantFail(File.pdb().getPDBInfoStream());
277 auto DirectoryBlocks = File.pdb().getDirectoryBlockArray();
278 const auto &Layout = File.pdb().getMsfLayout();
280 getOffsetInStream(DirectoryBlocks, FileOffset, File.pdb().getBlockSize());
442 printStructField(P, "the PDB Stream Version Signature",
445 printStructField(P, "the signature of the PDB Stream",
448 printStructField(P, "the age of the PDB", uint32_t(Header->Age));
450 printStructField(P, "the guid of the PDB", fmt_guid(Header->Guid.Guid));
455 P.printLine("Within the PDB stream:");
462 } Substreams[] = {{sizeof(InfoStreamHeader), "PDB Stream Header",
466 {Info.getStreamSize(), "PDB Feature Signatures",