LLVM 22.0.0git
|
#include "llvm/DebugInfo/PDB/Native/PublicsStream.h"
Public Member Functions | |
LLVM_ABI | PublicsStream (std::unique_ptr< msf::MappedBlockStream > Stream) |
LLVM_ABI | ~PublicsStream () |
LLVM_ABI Error | reload () |
LLVM_ABI uint32_t | getSymHash () const |
LLVM_ABI uint16_t | getThunkTableSection () const |
LLVM_ABI uint32_t | getThunkTableOffset () const |
const GSIHashTable & | getPublicsTable () const |
FixedStreamArray< support::ulittle32_t > | getAddressMap () const |
FixedStreamArray< support::ulittle32_t > | getThunkMap () const |
FixedStreamArray< SectionOffset > | getSectionOffsets () const |
LLVM_ABI std::optional< std::pair< codeview::PublicSym32, size_t > > | findByAddress (const SymbolStream &Symbols, uint16_t Segment, uint32_t Offset) const |
Find a public symbol by a segment and offset. |
Definition at line 29 of file PublicsStream.h.
PublicsStream::PublicsStream | ( | std::unique_ptr< msf::MappedBlockStream > | Stream | ) |
Definition at line 40 of file PublicsStream.cpp.
References llvm::move().
|
default |
References LLVM_ABI.
std::optional< std::pair< codeview::PublicSym32, size_t > > PublicsStream::findByAddress | ( | const SymbolStream & | Symbols, |
uint16_t | Segment, | ||
uint32_t | Offset ) const |
Find a public symbol by a segment and offset.
In case there is more than one symbol (for example due to ICF), the first one is returned.
Definition at line 106 of file PublicsStream.cpp.
References llvm::consumeError(), llvm::codeview::SymbolDeserializer::deserializeAs(), llvm::lower_bound(), llvm::codeview::PublicSym32::Offset, llvm::pdb::Offset, llvm::codeview::PublicSym32::Segment, llvm::pdb::Symbols, and llvm::support::detail::packed_endian_specific_integral< ValueType, Endian, Alignment, ALIGN >::value().
|
inline |
Definition at line 39 of file PublicsStream.h.
|
inline |
Definition at line 38 of file PublicsStream.h.
|
inline |
Definition at line 45 of file PublicsStream.h.
uint32_t PublicsStream::getSymHash | ( | ) | const |
Definition at line 45 of file PublicsStream.cpp.
|
inline |
Definition at line 42 of file PublicsStream.h.
uint32_t PublicsStream::getThunkTableOffset | ( | ) | const |
Definition at line 49 of file PublicsStream.cpp.
uint16_t PublicsStream::getThunkTableSection | ( | ) | const |
Definition at line 46 of file PublicsStream.cpp.
Error PublicsStream::reload | ( | ) |
Definition at line 58 of file PublicsStream.cpp.
References llvm::BinaryStreamReader::bytesRemaining(), llvm::pdb::corrupt_file, llvm::joinErrors(), llvm::make_error(), llvm::BinaryStreamReader::readArray(), llvm::BinaryStreamReader::readObject(), and llvm::Error::success().