LLDB mainline
Functions
PdbUtil.cpp File Reference
#include "PdbUtil.h"
#include "DWARFLocationExpression.h"
#include "PdbIndex.h"
#include "PdbSymUid.h"
#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
#include "llvm/DebugInfo/CodeView/SymbolDeserializer.h"
#include "llvm/DebugInfo/CodeView/TypeDeserializer.h"
#include "llvm/DebugInfo/PDB/Native/DbiStream.h"
#include "llvm/DebugInfo/PDB/Native/TpiStream.h"
#include "Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.h"
#include "Plugins/SymbolFile/NativePDB/CodeViewRegisterMapping.h"
#include "lldb/Symbol/Block.h"
#include "lldb/Utility/LLDBAssert.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/lldb-enumerations.h"

Go to the source code of this file.

Functions

static Variable::RangeList MakeRangeList (const PdbIndex &index, const LocalVariableAddrRange &range, llvm::ArrayRef< LocalVariableAddrGap > gaps)
 
template<typename RecordT >
RecordT createRecord (const CVSymbol &sym)
 
template<typename RecordT >
static SegmentOffset GetSegmentAndOffset (const CVSymbol &sym)
 
template<>
SegmentOffset GetSegmentAndOffset< TrampolineSym > (const CVSymbol &sym)
 
template<>
SegmentOffset GetSegmentAndOffset< Thunk32Sym > (const CVSymbol &sym)
 
template<>
SegmentOffset GetSegmentAndOffset< CoffGroupSym > (const CVSymbol &sym)
 
template<>
SegmentOffset GetSegmentAndOffset< DataSym > (const CVSymbol &sym)
 
template<>
SegmentOffset GetSegmentAndOffset< ThreadLocalDataSym > (const CVSymbol &sym)
 
template<typename RecordT >
SegmentOffsetLength GetSegmentOffsetAndLength (const CVSymbol &sym)
 
template<>
SegmentOffsetLength GetSegmentOffsetAndLength< TrampolineSym > (const CVSymbol &sym)
 
template<>
SegmentOffsetLength GetSegmentOffsetAndLength< Thunk32Sym > (const CVSymbol &sym)
 
template<>
SegmentOffsetLength GetSegmentOffsetAndLength< CoffGroupSym > (const CVSymbol &sym)
 
static llvm::FixedStreamArray< FrameData >::Iterator GetCorrespondingFrameData (lldb::addr_t load_addr, const DebugFrameDataSubsectionRef &fpo_data, const Variable::RangeList &ranges)
 
static bool GetFrameDataProgram (PdbIndex &index, const Variable::RangeList &ranges, llvm::StringRef &out_program)
 
static RegisterId GetBaseFrameRegister (PdbIndex &index, PdbCompilandSymId frame_proc_id, bool is_parameter)
 
template<typename RecordType >
static size_t GetSizeOfTypeInternal (CVType cvt)
 

Function Documentation

◆ createRecord()

template<typename RecordT >
RecordT createRecord ( const CVSymbol &  sym)

Definition at line 356 of file PdbUtil.cpp.

◆ GetBaseFrameRegister()

static RegisterId GetBaseFrameRegister ( PdbIndex index,
PdbCompilandSymId  frame_proc_id,
bool  is_parameter 
)
static

◆ GetCorrespondingFrameData()

static llvm::FixedStreamArray< FrameData >::Iterator GetCorrespondingFrameData ( lldb::addr_t  load_addr,
const DebugFrameDataSubsectionRef &  fpo_data,
const Variable::RangeList ranges 
)
static

◆ GetFrameDataProgram()

static bool GetFrameDataProgram ( PdbIndex index,
const Variable::RangeList ranges,
llvm::StringRef &  out_program 
)
static

◆ GetSegmentAndOffset()

template<typename RecordT >
static SegmentOffset GetSegmentAndOffset ( const CVSymbol &  sym)
static

Definition at line 363 of file PdbUtil.cpp.

◆ GetSegmentAndOffset< CoffGroupSym >()

template<>
SegmentOffset GetSegmentAndOffset< CoffGroupSym > ( const CVSymbol &  sym)

Definition at line 380 of file PdbUtil.cpp.

◆ GetSegmentAndOffset< DataSym >()

template<>
SegmentOffset GetSegmentAndOffset< DataSym > ( const CVSymbol &  sym)

Definition at line 385 of file PdbUtil.cpp.

◆ GetSegmentAndOffset< ThreadLocalDataSym >()

template<>
SegmentOffset GetSegmentAndOffset< ThreadLocalDataSym > ( const CVSymbol &  sym)

Definition at line 391 of file PdbUtil.cpp.

◆ GetSegmentAndOffset< Thunk32Sym >()

template<>
SegmentOffset GetSegmentAndOffset< Thunk32Sym > ( const CVSymbol &  sym)

Definition at line 374 of file PdbUtil.cpp.

◆ GetSegmentAndOffset< TrampolineSym >()

template<>
SegmentOffset GetSegmentAndOffset< TrampolineSym > ( const CVSymbol &  sym)

Definition at line 369 of file PdbUtil.cpp.

◆ GetSegmentOffsetAndLength()

template<typename RecordT >
SegmentOffsetLength GetSegmentOffsetAndLength ( const CVSymbol &  sym)

Definition at line 443 of file PdbUtil.cpp.

◆ GetSegmentOffsetAndLength< CoffGroupSym >()

template<>
SegmentOffsetLength GetSegmentOffsetAndLength< CoffGroupSym > ( const CVSymbol &  sym)

Definition at line 462 of file PdbUtil.cpp.

◆ GetSegmentOffsetAndLength< Thunk32Sym >()

template<>
SegmentOffsetLength GetSegmentOffsetAndLength< Thunk32Sym > ( const CVSymbol &  sym)

Definition at line 456 of file PdbUtil.cpp.

◆ GetSegmentOffsetAndLength< TrampolineSym >()

template<>
SegmentOffsetLength GetSegmentOffsetAndLength< TrampolineSym > ( const CVSymbol &  sym)

Definition at line 449 of file PdbUtil.cpp.

◆ GetSizeOfTypeInternal()

template<typename RecordType >
static size_t GetSizeOfTypeInternal ( CVType  cvt)
static

Definition at line 1063 of file PdbUtil.cpp.

◆ MakeRangeList()

static Variable::RangeList MakeRangeList ( const PdbIndex index,
const LocalVariableAddrRange &  range,
llvm::ArrayRef< LocalVariableAddrGap >  gaps 
)
static