7 #ifndef RETDEC_PDBPARSER_PDB_SYMBOLS_H
8 #define RETDEC_PDBPARSER_PDB_SYMBOLS_H
78 std::vector<PDBFunctionData>
data;
158 return sections[section].virtual_address + offset;
170 return sections[section].file_address + offset;
Definition: pdb_symbols.h:64
std::vector< PDBLineInfo > lines
Definition: pdb_symbols.h:79
int offset
Definition: pdb_symbols.h:69
PDBFunction(int cur_module)
Definition: pdb_symbols.h:81
unsigned int type_index
Definition: pdb_symbols.h:73
PDBTypeFunction * type_def
Definition: pdb_symbols.h:74
int module_index
Definition: pdb_symbols.h:71
std::vector< int > blocks
Definition: pdb_symbols.h:77
void dump(void)
Definition: pdb_symbols.cpp:59
std::vector< PDBLocalVariable > loc_variables
Definition: pdb_symbols.h:76
int cur_block
Definition: pdb_symbols.h:91
int args_remain
Definition: pdb_symbols.h:90
int overload_index
Definition: pdb_symbols.h:67
std::string getNameWithOverloadIndex() const
Definition: pdb_symbols.cpp:242
int depth
Definition: pdb_symbols.h:92
std::vector< PDBFunctionData > data
Definition: pdb_symbols.h:78
uint64_t address
Definition: pdb_symbols.h:68
int length
Definition: pdb_symbols.h:72
char * name
Definition: pdb_symbols.h:66
int section
Definition: pdb_symbols.h:70
std::vector< PDBLocalVariable > arguments
Definition: pdb_symbols.h:75
bool parse_symbol(PDBGeneralSymbol *symbol, PDBTypes *types, PDBSymbols *pdbsyms)
Definition: pdb_symbols.cpp:113
void parse_line_info(LineInfoHeader *hdr)
Definition: pdb_symbols.cpp:228
Definition: pdb_symbols.h:122
PDBModulesVec & modules
Definition: pdb_symbols.h:194
void print_global_variables(void)
Definition: pdb_symbols.cpp:766
char * pdb_sym_data
Definition: pdb_symbols.h:193
PDBGlobalVarAddressMap & get_global_variables(void)
Definition: pdb_symbols.h:146
void print_functions(void)
Definition: pdb_symbols.cpp:756
PDBFunctionAddressMap functions
Definition: pdb_symbols.h:200
~PDBSymbols(void)
Definition: pdb_symbols.cpp:788
PDBSymbols(PDBStream *gsi, PDBStream *psi, PDBStream *sym, PDBModulesVec &m, PDBSectionsVec &s, PDBTypes *tps)
Definition: pdb_symbols.h:125
void dump_global_symbols(void)
Definition: pdb_symbols.cpp:406
uint64_t get_virtual_address(unsigned int section, unsigned int offset)
Definition: pdb_symbols.h:155
PDBTypes * types
Definition: pdb_symbols.h:196
PDBFunctionAddressMap & get_functions(void)
Definition: pdb_symbols.h:141
void dump_module_symbols(int index)
Definition: pdb_symbols.cpp:423
uint64_t get_file_address(unsigned int section, unsigned int offset)
Definition: pdb_symbols.h:167
static void dump_symbol(PSYM Sym)
Definition: pdb_symbols.cpp:801
bool parsed
Definition: pdb_symbols.h:197
void parse_symbols(void)
Definition: pdb_symbols.cpp:263
PDBSectionsVec & sections
Definition: pdb_symbols.h:195
PDBGlobalVarAddressMap global_variables
Definition: pdb_symbols.h:201
unsigned int pdb_sym_size
Definition: pdb_symbols.h:192
void dump_all_modules(void)
Definition: pdb_symbols.cpp:747
Definition: pdb_types.h:84
Definition: pdb_types.h:428
Definition: pdb_types.h:584
std::vector< PDBModule > PDBModulesVec
Definition: pdb_utils.h:114
ePDBLocVarLocation
Definition: pdb_symbols.h:25
@ PDBLVLOC_REGREL32
Definition: pdb_symbols.h:26
@ PDBLVLOC_BPREL32
Definition: pdb_symbols.h:26
@ PDBLVLOC_REGISTER
Definition: pdb_symbols.h:26
std::vector< PDBPESection > PDBSectionsVec
Definition: pdb_utils.h:125
struct retdec::pdbparser::_PDBLineInfo PDBLineInfo
struct retdec::pdbparser::_PDBLocalVariable PDBLocalVariable
struct retdec::pdbparser::_PDBGlobalVariable PDBGlobalVariable
struct retdec::pdbparser::_PDBFunctionData PDBFunctionData
std::map< uint64_t, PDBFunction * > PDBFunctionAddressMap
Definition: pdb_symbols.h:96
std::map< uint64_t, PDBGlobalVariable > PDBGlobalVarAddressMap
Definition: pdb_symbols.h:115
Definition: archive_wrapper.h:19
Definition: pdb_symbols.h:47
PDBTypeDef * type_def
Definition: pdb_symbols.h:53
int section
Definition: pdb_symbols.h:51
char * name
Definition: pdb_symbols.h:48
unsigned int type_index
Definition: pdb_symbols.h:52
int offset
Definition: pdb_symbols.h:50
uint64_t address
Definition: pdb_symbols.h:49
Definition: pdb_utils.h:129
Definition: pdb_symbols.h:104
int module_index
Definition: pdb_symbols.h:109
char * name
Definition: pdb_symbols.h:105
unsigned int type_index
Definition: pdb_symbols.h:110
int offset
Definition: pdb_symbols.h:107
PDBTypeDef * type_def
Definition: pdb_symbols.h:111
uint64_t address
Definition: pdb_symbols.h:106
int section
Definition: pdb_symbols.h:108
Definition: pdb_symbols.h:58
unsigned int offset
Definition: pdb_symbols.h:60
int line
Definition: pdb_symbols.h:59
Definition: pdb_symbols.h:31
PDBTypeDef * type_def
Definition: pdb_symbols.h:38
int block
Definition: pdb_symbols.h:34
int offset
Definition: pdb_symbols.h:35
ePDBLocVarLocation location
Definition: pdb_symbols.h:33
unsigned int type_index
Definition: pdb_symbols.h:37
int register_num
Definition: pdb_symbols.h:36
char * name
Definition: pdb_symbols.h:32
Definition: pdb_utils.h:95
Definition: pdb_info.h:3543