Public Member Functions | |
| AddressTranslateAIX (SymbolReaderFactory *fact_) | |
| AddressTranslateAIX (PID pid, SymbolReaderFactory *fact_) | |
| virtual bool | refresh () |
| virtual | ~AddressTranslateAIX () |
| Address | getLibraryTrapAddrSysV () |
| COMMON_EXPORT PID | getPid () |
| COMMON_EXPORT bool | getLibAtAddress (Address addr, LoadedLib *&lib) |
| COMMON_EXPORT bool | getLibs (vector< LoadedLib * > &libs_) |
| COMMON_EXPORT bool | getArchLibs (vector< LoadedLib * > &olibs) |
| COMMON_EXPORT LoadedLib * | getLoadedLib (std::string name) |
| COMMON_EXPORT LoadedLib * | getLoadedLib (SymReader *sym) |
| COMMON_EXPORT LoadedLib * | getExecutable () |
| void | setReadAbort (bool b) |
Static Public Member Functions | |
| static COMMON_EXPORT AddressTranslate * | createAddressTranslator (PID pid_, ProcessReader *reader_=NULL, SymbolReaderFactory *symfactory_=NULL, PROC_HANDLE phand=INVALID_HANDLE_VALUE, std::string exename=std::string(""), Address interp_base=(Address)-1) |
| static COMMON_EXPORT AddressTranslate * | createAddressTranslator (ProcessReader *reader_=NULL, SymbolReaderFactory *symfactory_=NULL, std::string exename=std::string(""), Address interp_base=(Address)-1) |
Protected Attributes | |
| PID | pid |
| PROC_HANDLE | phandle |
| bool | creation_error |
| vector< LoadedLib * > | libs |
| std::string | exec_name |
| LoadedLib * | exec |
| SymbolReaderFactory * | symfactory |
| bool | read_abort |
Definition at line 46 of file addrtranslate-aix.C.
| Dyninst::AddressTranslateAIX::AddressTranslateAIX | ( | SymbolReaderFactory * | fact_ | ) |
Definition at line 221 of file addrtranslate-aix.C.
References Dyninst::AddressTranslate::symfactory.
| Dyninst::AddressTranslateAIX::AddressTranslateAIX | ( | PID | pid, | |
| SymbolReaderFactory * | fact_ | |||
| ) |
Definition at line 227 of file addrtranslate-aix.C.
References refresh(), and Dyninst::AddressTranslate::symfactory.
| Dyninst::AddressTranslateAIX::~AddressTranslateAIX | ( | ) | [virtual] |
Definition at line 234 of file addrtranslate-aix.C.
| AddressTranslate * AddressTranslate::createAddressTranslator | ( | ProcessReader * | reader_ = NULL, |
|
| SymbolReaderFactory * | symfactory_ = NULL, |
|||
| std::string | exename = std::string(""), |
|||
| Address | interp_base = (Address) -1 | |||
| ) | [static, inherited] |
Definition at line 216 of file addrtranslate-aix.C.
References Dyninst::AddressTranslate::createAddressTranslator().
| AddressTranslate * AddressTranslate::createAddressTranslator | ( | PID | pid_, | |
| ProcessReader * | reader_ = NULL, |
|||
| SymbolReaderFactory * | symfactory_ = NULL, |
|||
| PROC_HANDLE | phand = INVALID_HANDLE_VALUE, |
|||
| std::string | exename = std::string(""), |
|||
| Address | interp_base = (Address) -1 | |||
| ) | [static, inherited] |
Definition at line 197 of file addrtranslate-aix.C.
References Dyninst::AddressTranslate::creation_error.
Referenced by Dyninst::SymtabAPI::AddressLookup::createAddressLookup(), and Dyninst::AddressTranslate::createAddressTranslator().
| COMMON_EXPORT bool Dyninst::AddressTranslate::getArchLibs | ( | vector< LoadedLib * > & | olibs | ) | [inherited] |
Referenced by Dyninst::AddressTranslateSysV::refresh().
| LoadedLib * AddressTranslate::getExecutable | ( | ) | [inherited] |
Definition at line 168 of file addrtranslate.C.
References Dyninst::AddressTranslate::exec.
Referenced by Dyninst::SymtabAPI::AddressLookup::getExecutable().
This code sets lower_lib_index and higher_lib_index to point to the indexes in libs[] that have dynamic section addresses that are the closest to the target address.
Let's search this list in a not-stupid order. We'll check lower_lib_index and higher_lib_index first (the -1 and -2 cases). If neither of those look right, then we'll just have to walk the entire list.
Definition at line 49 of file addrtranslate.C.
References Dyninst::LoadedLib::getDynamicAddr(), Dyninst::LoadedLib::getMappedRegions(), and Dyninst::AddressTranslate::libs.
Referenced by Dyninst::SymtabAPI::AddressLookup::getOffset(), and Dyninst::SymtabAPI::AddressLookup::getSymbol().
| Address Dyninst::AddressTranslateAIX::getLibraryTrapAddrSysV | ( | ) | [virtual] |
Reimplemented from Dyninst::AddressTranslate.
Definition at line 344 of file addrtranslate-aix.C.
| bool AddressTranslate::getLibs | ( | vector< LoadedLib * > & | libs_ | ) | [inherited] |
Definition at line 124 of file addrtranslate.C.
References Dyninst::AddressTranslate::libs.
Referenced by Dyninst::SymtabAPI::AddressLookup::getAllSymtabs(), Dyninst::SymtabAPI::AddressLookup::getLoadAddresses(), and Dyninst::SymtabAPI::AddressLookup::getLoadedLib().
| LoadedLib * AddressTranslate::getLoadedLib | ( | std::string | name | ) | [inherited] |
Definition at line 137 of file addrtranslate.C.
References Dyninst::AddressTranslate::libs.
| PID AddressTranslate::getPid | ( | ) | [inherited] |
Definition at line 132 of file addrtranslate.C.
References Dyninst::AddressTranslate::pid.
| bool Dyninst::AddressTranslateAIX::refresh | ( | ) | [virtual] |
Implements Dyninst::AddressTranslate.
Definition at line 88 of file addrtranslate-aix.C.
References Dyninst::LoadedLib::add_mapped_region(), Dyninst::AddressTranslate::libs, Dyninst::open_map_fd(), P_close(), Dyninst::AddressTranslate::pid, resolve_file_path(), and Dyninst::LoadedLib::setDataLoadAddr().
Referenced by AddressTranslateAIX().
| void AddressTranslate::setReadAbort | ( | bool | b | ) | [inherited] |
Definition at line 149 of file addrtranslate.C.
References Dyninst::AddressTranslate::read_abort.
bool Dyninst::AddressTranslate::creation_error [protected, inherited] |
Definition at line 103 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslateSysV::AddressTranslateSysV(), Dyninst::AddressTranslate::createAddressTranslator(), and Dyninst::AddressTranslateWin::init().
LoadedLib* Dyninst::AddressTranslate::exec [protected, inherited] |
Definition at line 108 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslate::getExecutable(), Dyninst::AddressTranslateSysV::refresh(), and Dyninst::AddressTranslate::~AddressTranslate().
std::string Dyninst::AddressTranslate::exec_name [protected, inherited] |
Definition at line 107 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslateSysV::getExecName(), and Dyninst::AddressTranslateSysV::parseDTDebug().
vector<LoadedLib *> Dyninst::AddressTranslate::libs [protected, inherited] |
Definition at line 106 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslate::getLibAtAddress(), Dyninst::AddressTranslate::getLibs(), Dyninst::AddressTranslate::getLoadedLib(), Dyninst::AddressTranslateWin::refresh(), Dyninst::AddressTranslateSysV::refresh(), refresh(), and Dyninst::AddressTranslate::~AddressTranslate().
PROC_HANDLE Dyninst::AddressTranslate::phandle [protected, inherited] |
Definition at line 102 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslateWin::refresh().
PID Dyninst::AddressTranslate::pid [protected, inherited] |
Definition at line 101 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslate::getPid(), Dyninst::AddressTranslateSysV::refresh(), refresh(), and Dyninst::AddressTranslateSysV::setInterpreterBase().
bool Dyninst::AddressTranslate::read_abort [protected, inherited] |
Definition at line 110 of file addrtranslate.h.
Referenced by Dyninst::AddressTranslateSysV::refresh(), and Dyninst::AddressTranslate::setReadAbort().
SymbolReaderFactory* Dyninst::AddressTranslate::symfactory [protected, inherited] |
1.6.1