LLVM: lib/DebugInfo/PDB/Native/NativeSession.cpp File Reference (original) (raw)
#include "[llvm/DebugInfo/PDB/Native/NativeSession.h](NativeSession%5F8h%5Fsource.html)"#include "[llvm/ADT/SmallString.h](SmallString%5F8h%5Fsource.html)"#include "[llvm/BinaryFormat/Magic.h](Magic%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/MSF/MappedBlockStream.h](MappedBlockStream%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/IPDBEnumChildren.h](IPDBEnumChildren%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/IPDBSourceFile.h](IPDBSourceFile%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/DbiModuleDescriptor.h](DbiModuleDescriptor%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/DbiModuleList.h](DbiModuleList%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/DbiStream.h](DbiStream%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/ISectionContribVisitor.h](ISectionContribVisitor%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/ModuleDebugStream.h](ModuleDebugStream%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/NativeEnumInjectedSources.h](NativeEnumInjectedSources%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/NativeExeSymbol.h](NativeExeSymbol%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/PDBFile.h](PDBFile%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/RawConstants.h](RawConstants%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/RawError.h](RawError%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/RawTypes.h](RawTypes%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/Native/SymbolCache.h](SymbolCache%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/PDBSymbol.h](PDBSymbol%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/PDBSymbolCompiland.h](PDBSymbolCompiland%5F8h%5Fsource.html)"#include "[llvm/DebugInfo/PDB/PDBSymbolExe.h](PDBSymbolExe%5F8h%5Fsource.html)"#include "[llvm/Object/Binary.h](Binary%5F8h%5Fsource.html)"#include "[llvm/Object/COFF.h](Object%5F2COFF%5F8h%5Fsource.html)"#include "[llvm/Support/Allocator.h](Allocator%5F8h%5Fsource.html)"#include "[llvm/Support/BinaryByteStream.h](BinaryByteStream%5F8h%5Fsource.html)"#include "[llvm/Support/BinaryStreamArray.h](BinaryStreamArray%5F8h%5Fsource.html)"#include "[llvm/Support/Error.h](llvm%5F2Support%5F2Error%5F8h%5Fsource.html)"#include "[llvm/Support/ErrorOr.h](ErrorOr%5F8h%5Fsource.html)"#include "[llvm/Support/MemoryBuffer.h](MemoryBuffer%5F8h%5Fsource.html)"#include "[llvm/Support/Path.h](Path%5F8h%5Fsource.html)"#include <cassert>#include <memory>#include <utility>
Go to the source code of this file.
| Namespaces | |
|---|---|
| namespace | llvm |
| This is an optimization pass for GlobalISel generic memory operations. | |
| namespace | llvm::codeview |
| Functions | |
|---|---|
| static DbiStream * | getDbiStreamPtr (PDBFile &File) |
| static Error | validatePdbMagic (StringRef PdbPath) |
| static Expected< std::unique_ptr< PDBFile > > | loadPdbFile (StringRef PdbPath, std::unique_ptr< BumpPtrAllocator > &Allocator) |
| static Expected< std::string > | getPdbPathFromExe (StringRef ExePath) |
Function Documentation
◆ getDbiStreamPtr()
| DbiStream * getDbiStreamPtr ( PDBFile & File) | static |
|---|
Definition at line 55 of file NativeSession.cpp.
References llvm::consumeError(), llvm::Expected< T >::get(), and llvm::Expected< T >::takeError().
◆ getPdbPathFromExe()
| Expected< std::string > getPdbPathFromExe ( StringRef ExePath) | static |
|---|
Definition at line 141 of file NativeSession.cpp.
References llvm::object::createBinary(), llvm::dyn_cast(), E(), llvm::object::COFFObjectFile::getDebugPDBInfo(), llvm::pdb::invalid_format, llvm::make_error(), and llvm::Expected< T >::takeError().
Referenced by llvm::pdb::NativeSession::createFromExe(), and llvm::pdb::NativeSession::searchForPdb().
◆ loadPdbFile()
| Expected< std::unique_ptr< PDBFile > > loadPdbFile ( StringRef PdbPath, std::unique_ptr< BumpPtrAllocator > & Allocator ) | static |
|---|
Definition at line 104 of file NativeSession.cpp.
References Allocator, llvm::ErrorOr< T >::getError(), llvm::MemoryBuffer::getFile(), llvm::little, llvm::make_error(), and validatePdbMagic().
Referenced by llvm::pdb::NativeSession::createFromExe(), llvm::pdb::NativeSession::createFromPdbPath(), and llvm::pdb::NativeSession::searchForPdb().
◆ validatePdbMagic()
| Error validatePdbMagic ( StringRef PdbPath) | static |
|---|
Definition at line 90 of file NativeSession.cpp.
References llvm::identify_magic(), llvm::pdb::invalid_format, llvm::msf::Magic, llvm::make_error(), llvm::file_magic::pdb, and llvm::Error::success().
Referenced by llvm::pdb::NativeSession::createFromExe(), and loadPdbFile().