LLDB mainline
|
Classes | |
struct | CompilandIndexItem |
Represents a single compile unit. More... | |
class | CompileUnitIndex |
Indexes information about all compile units. More... | |
struct | CVTagRecord |
struct | DeclStatus |
struct | MemberValLocation |
class | PdbAstBuilder |
struct | PdbCompilandId |
struct | PdbCompilandSymId |
struct | PdbFieldListMemberId |
struct | PdbGlobalSymId |
class | PdbIndex |
PdbIndex - Lazy access to the important parts of a PDB file. More... | |
class | PdbSymUid |
struct | PdbTypeSymId |
struct | SegmentOffset |
struct | SegmentOffsetLength |
struct | SymbolAndUid |
class | SymbolFileNativePDB |
class | UdtRecordCompleter |
struct | VariableInfo |
Enumerations | |
enum class | PdbSymUidKind : uint8_t { Compiland , CompilandSym , PublicSym , GlobalSym , Type , FieldListMember } |
Functions | |
uint32_t | GetLLDBRegisterNumber (llvm::Triple::ArchType arch_type, llvm::codeview::RegisterId register_id) |
uint32_t | GetRegisterSize (llvm::codeview::RegisterId register_id) |
DWARFExpression | MakeEnregisteredLocationExpression (llvm::codeview::RegisterId reg, lldb::ModuleSP module) |
DWARFExpression | MakeRegRelLocationExpression (llvm::codeview::RegisterId reg, int32_t offset, lldb::ModuleSP module) |
DWARFExpression | MakeVFrameRelLocationExpression (llvm::StringRef fpo_program, int32_t offset, lldb::ModuleSP module) |
DWARFExpression | MakeGlobalLocationExpression (uint16_t section, uint32_t offset, lldb::ModuleSP module) |
DWARFExpression | MakeConstantLocationExpression (llvm::codeview::TypeIndex underlying_ti, llvm::pdb::TpiStream &tpi, const llvm::APSInt &constant, lldb::ModuleSP module) |
DWARFExpression | MakeEnregisteredLocationExpressionForComposite (const std::map< uint64_t, MemberValLocation > &offset_to_location, std::map< uint64_t, size_t > &offset_to_size, size_t total_size, lldb::ModuleSP module) |
bool | TranslateFPOProgramToDWARFExpression (llvm::StringRef program, llvm::StringRef register_name, llvm::Triple::ArchType arch_type, lldb_private::Stream &stream) |
template<typename T > | |
uint64_t | toOpaqueUid (const T &cid) |
llvm::pdb::PDB_SymType | CVSymToPDBSym (llvm::codeview::SymbolKind kind) |
llvm::pdb::PDB_SymType | CVTypeToPDBType (llvm::codeview::TypeLeafKind kind) |
bool | SymbolHasAddress (const llvm::codeview::CVSymbol &sym) |
bool | SymbolIsCode (const llvm::codeview::CVSymbol &sym) |
SegmentOffset | GetSegmentAndOffset (const llvm::codeview::CVSymbol &sym) |
SegmentOffsetLength | GetSegmentOffsetAndLength (const llvm::codeview::CVSymbol &sym) |
template<typename RecordT > | |
bool | IsValidRecord (const RecordT &sym) |
bool | IsValidRecord (const llvm::codeview::ProcRefSym &sym) |
bool | IsForwardRefUdt (llvm::codeview::CVType cvt) |
bool | IsTagRecord (llvm::codeview::CVType cvt) |
bool | IsClassStructUnion (llvm::codeview::CVType cvt) |
bool | IsForwardRefUdt (const PdbTypeSymId &id, llvm::pdb::TpiStream &tpi) |
bool | IsTagRecord (const PdbTypeSymId &id, llvm::pdb::TpiStream &tpi) |
lldb::AccessType | TranslateMemberAccess (llvm::codeview::MemberAccess access) |
llvm::codeview::TypeIndex | GetFieldListIndex (llvm::codeview::CVType cvt) |
llvm::codeview::TypeIndex | LookThroughModifierRecord (llvm::codeview::CVType modifier) |
llvm::StringRef | DropNameScope (llvm::StringRef name) |
VariableInfo | GetVariableNameInfo (llvm::codeview::CVSymbol symbol) |
VariableInfo | GetVariableLocationInfo (PdbIndex &index, PdbCompilandSymId var_id, Block &func_block, lldb::ModuleSP module) |
size_t | GetTypeSizeForSimpleKind (llvm::codeview::SimpleTypeKind kind) |
lldb::BasicType | GetCompilerTypeForSimpleKind (llvm::codeview::SimpleTypeKind kind) |
PdbTypeSymId | GetBestPossibleDecl (PdbTypeSymId id, llvm::pdb::TpiStream &tpi) |
size_t | GetSizeOfType (PdbTypeSymId id, llvm::pdb::TpiStream &tpi) |
|
strong |
Enumerator | |
---|---|
Compiland | |
CompilandSym | |
PublicSym | |
GlobalSym | |
Type | |
FieldListMember |
Definition at line 30 of file PdbSymUid.h.
llvm::pdb::PDB_SymType lldb_private::npdb::CVSymToPDBSym | ( | llvm::codeview::SymbolKind | kind | ) |
llvm::pdb::PDB_SymType lldb_private::npdb::CVTypeToPDBType | ( | llvm::codeview::TypeLeafKind | kind | ) |
llvm::StringRef lldb_private::npdb::DropNameScope | ( | llvm::StringRef | name | ) |
Definition at line 599 of file PdbUtil.cpp.
References MSVCUndecoratedNameParser::DropScope().
Referenced by lldb_private::npdb::PdbAstBuilder::GetOrCreateTypedefDecl().
PdbTypeSymId lldb_private::npdb::GetBestPossibleDecl | ( | PdbTypeSymId | id, |
llvm::pdb::TpiStream & | tpi | ||
) |
lldb::BasicType lldb_private::npdb::GetCompilerTypeForSimpleKind | ( | llvm::codeview::SimpleTypeKind | kind | ) |
Referenced by lldb_private::npdb::PdbAstBuilder::CreateSimpleType().
llvm::codeview::TypeIndex lldb_private::npdb::GetFieldListIndex | ( | llvm::codeview::CVType | cvt | ) |
Referenced by lldb_private::npdb::PdbAstBuilder::CompleteTagDecl().
uint32_t lldb_private::npdb::GetLLDBRegisterNumber | ( | llvm::Triple::ArchType | arch_type, |
llvm::codeview::RegisterId | register_id | ||
) |
Definition at line 610 of file CodeViewRegisterMapping.cpp.
References g_code_view_to_lldb_registers_arm64, g_code_view_to_lldb_registers_x86, g_code_view_to_lldb_registers_x86_64, lldb_private::lldb_bnd0_i386, lldb_private::lldb_bnd1_i386, lldb_private::lldb_bnd2_i386, LLDB_INVALID_REGNUM, and lldb_private::lldb_mxcsr_i386.
Referenced by ConvertPDBLocationToDWARFExpression(), GetRegisterNumber(), and ResolveLLDBRegisterNum().
uint32_t lldb_private::npdb::GetRegisterSize | ( | llvm::codeview::RegisterId | register_id | ) |
Definition at line 654 of file CodeViewRegisterMapping.cpp.
Referenced by GetVariableLocationInfo().
SegmentOffset lldb_private::npdb::GetSegmentAndOffset | ( | const llvm::codeview::CVSymbol & | sym | ) |
SegmentOffsetLength lldb_private::npdb::GetSegmentOffsetAndLength | ( | const llvm::codeview::CVSymbol & | sym | ) |
size_t lldb_private::npdb::GetSizeOfType | ( | PdbTypeSymId | id, |
llvm::pdb::TpiStream & | tpi | ||
) |
Definition at line 1069 of file PdbUtil.cpp.
References GetSizeOfType(), GetTypeSizeForSimpleKind(), IsForwardRefUdt(), and LookThroughModifierRecord().
Referenced by lldb_private::npdb::PdbAstBuilder::CreateArrayType(), GetSizeOfType(), and GetVariableLocationInfo().
size_t lldb_private::npdb::GetTypeSizeForSimpleKind | ( | llvm::codeview::SimpleTypeKind | kind | ) |
VariableInfo lldb_private::npdb::GetVariableLocationInfo | ( | PdbIndex & | index, |
PdbCompilandSymId | var_id, | ||
Block & | func_block, | ||
lldb::ModuleSP | module | ||
) |
Definition at line 734 of file PdbUtil.cpp.
References lldb_private::DWARFExpressionList::AddExpression(), lldb_private::npdb::PdbSymUid::asCompilandSym(), error(), GetBaseFrameRegister(), GetFrameDataProgram(), lldb_private::UserID::GetID(), GetRegisterSize(), GetSizeOfType(), GetVariableNameInfo(), lldb_private::npdb::VariableInfo::is_param, lldbassert, lldb_private::npdb::VariableInfo::location, MakeEnregisteredLocationExpression(), MakeEnregisteredLocationExpressionForComposite(), MakeRangeList(), MakeRegRelLocationExpression(), MakeVFrameRelLocationExpression(), lldb_private::npdb::PdbCompilandSymId::modi, lldb_private::npdb::PdbCompilandSymId::offset, lldb_private::npdb::PdbIndex::ReadSymbolRecord(), reg_size, lldb_private::npdb::PdbIndex::tpi(), and lldb_private::npdb::VariableInfo::type.
Referenced by lldb_private::npdb::SymbolFileNativePDB::CreateLocalVariable().
VariableInfo lldb_private::npdb::GetVariableNameInfo | ( | llvm::codeview::CVSymbol | symbol | ) |
Referenced by lldb_private::npdb::PdbAstBuilder::CreateVariableDecl(), and GetVariableLocationInfo().
bool lldb_private::npdb::IsClassStructUnion | ( | llvm::codeview::CVType | cvt | ) |
Definition at line 529 of file PdbUtil.cpp.
bool lldb_private::npdb::IsForwardRefUdt | ( | const PdbTypeSymId & | id, |
llvm::pdb::TpiStream & | tpi | ||
) |
bool lldb_private::npdb::IsForwardRefUdt | ( | llvm::codeview::CVType | cvt | ) |
bool lldb_private::npdb::IsTagRecord | ( | const PdbTypeSymId & | id, |
llvm::pdb::TpiStream & | tpi | ||
) |
bool lldb_private::npdb::IsTagRecord | ( | llvm::codeview::CVType | cvt | ) |
Definition at line 517 of file PdbUtil.cpp.
Referenced by lldb_private::npdb::SymbolFileNativePDB::BuildParentMap(), lldb_private::npdb::PdbAstBuilder::CompleteTagDecl(), lldb_private::npdb::CVTagRecord::create(), lldb_private::npdb::PdbAstBuilder::CreateType(), GetNestedTagDefinition(), lldb_private::npdb::PdbAstBuilder::GetOrCreateType(), lldb_private::npdb::PdbAstBuilder::ParseAllTypes(), lldb_private::npdb::PdbAstBuilder::ParseNamespace(), and lldb_private::npdb::SymbolFileNativePDB::ParseTypes().
|
inline |
bool lldb_private::npdb::IsValidRecord | ( | const RecordT & | sym | ) |
Definition at line 119 of file PdbUtil.h.
Referenced by lldb_private::npdb::SymbolFileNativePDB::FindFunctions().
llvm::codeview::TypeIndex lldb_private::npdb::LookThroughModifierRecord | ( | llvm::codeview::CVType | modifier | ) |
Referenced by lldb_private::npdb::PdbAstBuilder::CompleteTagDecl(), and GetSizeOfType().
DWARFExpression lldb_private::npdb::MakeConstantLocationExpression | ( | llvm::codeview::TypeIndex | underlying_ti, |
llvm::pdb::TpiStream & | tpi, | ||
const llvm::APSInt & | constant, | ||
lldb::ModuleSP | module | ||
) |
DWARFExpression lldb_private::npdb::MakeEnregisteredLocationExpression | ( | llvm::codeview::RegisterId | reg, |
lldb::ModuleSP | module | ||
) |
Definition at line 167 of file DWARFLocationExpression.cpp.
References MakeRegisterBasedLocationExpressionInternal().
Referenced by GetVariableLocationInfo().
DWARFExpression lldb_private::npdb::MakeEnregisteredLocationExpressionForComposite | ( | const std::map< uint64_t, MemberValLocation > & | offset_to_location, |
std::map< uint64_t, size_t > & | offset_to_size, | ||
size_t | total_size, | ||
lldb::ModuleSP | module | ||
) |
Definition at line 261 of file DWARFLocationExpression.cpp.
References lldb_private::npdb::MemberValLocation::is_at_reg, MakeLocationExpressionInternal(), MakeRegisterBasedLocationExpressionInternal(), lldb_private::Stream::PutHex8(), and lldb_private::Stream::PutULEB128().
Referenced by GetVariableLocationInfo().
DWARFExpression lldb_private::npdb::MakeGlobalLocationExpression | ( | uint16_t | section, |
uint32_t | offset, | ||
lldb::ModuleSP | module | ||
) |
Definition at line 204 of file DWARFLocationExpression.cpp.
References lldb_private::SectionList::FindSectionByID(), lldb_private::Stream::GetAddressByteSize(), lldb_private::Stream::GetByteOrder(), MakeLocationExpressionInternal(), lldb_private::Stream::PutHex8(), and lldb_private::Stream::PutMaxHex64().
Referenced by lldb_private::npdb::SymbolFileNativePDB::CreateGlobalVariable().
DWARFExpression lldb_private::npdb::MakeRegRelLocationExpression | ( | llvm::codeview::RegisterId | reg, |
int32_t | offset, | ||
lldb::ModuleSP | module | ||
) |
Definition at line 172 of file DWARFLocationExpression.cpp.
References MakeRegisterBasedLocationExpressionInternal().
Referenced by GetVariableLocationInfo().
DWARFExpression lldb_private::npdb::MakeVFrameRelLocationExpression | ( | llvm::StringRef | fpo_program, |
int32_t | offset, | ||
lldb::ModuleSP | module | ||
) |
Definition at line 184 of file DWARFLocationExpression.cpp.
References EmitVFrameEvaluationDWARFExpression(), lldb::eRegisterKindLLDB, lldb_private::ArchSpec::GetMachine(), MakeLocationExpressionInternal(), lldb_private::Stream::PutHex8(), and lldb_private::Stream::PutSLEB128().
Referenced by GetVariableLocationInfo().
bool lldb_private::npdb::SymbolHasAddress | ( | const llvm::codeview::CVSymbol & | sym | ) |
Referenced by lldb_private::npdb::PdbIndex::BuildAddrToSymbolMap().
bool lldb_private::npdb::SymbolIsCode | ( | const llvm::codeview::CVSymbol & | sym | ) |
Referenced by lldb_private::npdb::PdbIndex::FindSymbolsByVa().
uint64_t lldb_private::npdb::toOpaqueUid | ( | const T & | cid | ) |
Definition at line 114 of file PdbSymUid.h.
References lldb_private::npdb::PdbSymUid::toOpaqueId().
Referenced by lldb_private::npdb::SymbolFileNativePDB::CreateAndCacheType(), lldb_private::npdb::SymbolFileNativePDB::CreateArrayType(), lldb_private::npdb::SymbolFileNativePDB::CreateBlock(), lldb_private::npdb::SymbolFileNativePDB::CreateClassStructUnion(), lldb_private::npdb::SymbolFileNativePDB::CreateCompileUnit(), lldb_private::npdb::SymbolFileNativePDB::CreateConstantSymbol(), lldb_private::npdb::SymbolFileNativePDB::CreateFunction(), lldb_private::npdb::PdbAstBuilder::CreateFunctionParameters(), lldb_private::npdb::SymbolFileNativePDB::CreateFunctionType(), lldb_private::npdb::SymbolFileNativePDB::CreateGlobalVariable(), lldb_private::npdb::SymbolFileNativePDB::CreateLocalVariable(), lldb_private::npdb::SymbolFileNativePDB::CreateModifierType(), lldb_private::npdb::SymbolFileNativePDB::CreatePointerType(), lldb_private::npdb::SymbolFileNativePDB::CreateProcedureType(), lldb_private::npdb::PdbAstBuilder::CreateRecordType(), lldb_private::npdb::SymbolFileNativePDB::CreateSimpleType(), lldb_private::npdb::SymbolFileNativePDB::CreateTypedef(), lldb_private::npdb::PdbAstBuilder::CreateVariableDecl(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateBlock(), lldb_private::npdb::PdbAstBuilder::GetOrCreateBlockDecl(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateCompileUnit(), lldb_private::npdb::PdbAstBuilder::GetOrCreateDeclForUid(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateFunction(), lldb_private::npdb::PdbAstBuilder::GetOrCreateFunctionDecl(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateGlobalVariable(), lldb_private::npdb::PdbAstBuilder::GetOrCreateInlinedFunctionDecl(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateLocalVariable(), lldb_private::npdb::PdbAstBuilder::GetOrCreateType(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateType(), lldb_private::npdb::SymbolFileNativePDB::GetOrCreateTypedef(), lldb_private::npdb::PdbAstBuilder::GetOrCreateTypedefDecl(), lldb_private::npdb::PdbAstBuilder::ParseBlockChildren(), lldb_private::npdb::SymbolFileNativePDB::ParseBlocksRecursive(), lldb_private::npdb::SymbolFileNativePDB::ParseInlineSite(), lldb_private::npdb::SymbolFileNativePDB::ParseLineTable(), and lldb_private::npdb::PdbAstBuilder::TryGetDecl().
bool lldb_private::npdb::TranslateFPOProgramToDWARFExpression | ( | llvm::StringRef | program, |
llvm::StringRef | register_name, | ||
llvm::Triple::ArchType | arch_type, | ||
lldb_private::Stream & | stream | ||
) |
Definition at line 91 of file PdbFPOProgramToDWARFExpression.cpp.
References ResolveFPOProgram(), and lldb_private::postfix::ToDWARF().
Referenced by EmitVFrameEvaluationDWARFExpression().
lldb::AccessType lldb_private::npdb::TranslateMemberAccess | ( | llvm::codeview::MemberAccess | access | ) |