#include <Symbol.h>
Public Types | |
| enum | SymbolType { ST_UNKNOWN, ST_FUNCTION, ST_OBJECT, ST_MODULE, ST_SECTION, ST_TLS, ST_DELETED, ST_INDIRECT, ST_NOTYPE } |
| enum | SymbolLinkage { SL_UNKNOWN, SL_GLOBAL, SL_LOCAL, SL_WEAK } |
| enum | SymbolTag { TAG_UNKNOWN, TAG_USER, TAG_LIBRARY, TAG_INTERNAL } |
| enum | SymbolVisibility { SV_UNKNOWN, SV_DEFAULT, SV_INTERNAL, SV_HIDDEN, SV_PROTECTED } |
| typedef dyn_hash_map< void *, void *, void_ptr_hasher > | annos_by_type_t |
| typedef std::vector < annos_by_type_t * > | annos_t |
Public Member Functions | |
| SYMTAB_EXPORT | Symbol () |
| SYMTAB_EXPORT | Symbol (const std::string &name, SymbolType t, SymbolLinkage l, SymbolVisibility v, Offset o, Module *module=NULL, Region *r=NULL, unsigned s=0, bool d=false, bool a=false, int index=-1, int strindex=-1, bool cs=false) |
| SYMTAB_EXPORT | ~Symbol () |
| SYMTAB_EXPORT bool | operator== (const Symbol &) const |
| SYMTAB_EXPORT const std::string & | getMangledName () const |
| SYMTAB_EXPORT const std::string & | getPrettyName () const |
| SYMTAB_EXPORT const std::string & | getTypedName () const |
| SYMTAB_EXPORT Module * | getModule () const |
| SYMTAB_EXPORT Symtab * | getSymtab () const |
| SYMTAB_EXPORT SymbolType | getType () const |
| SYMTAB_EXPORT SymbolLinkage | getLinkage () const |
| SYMTAB_EXPORT Offset | getOffset () const |
| SYMTAB_EXPORT Offset | getPtrOffset () const |
| SYMTAB_EXPORT Offset | getLocalTOC () const |
| SYMTAB_EXPORT unsigned | getSize () const |
| SYMTAB_EXPORT Region * | getRegion () const |
| SYMTAB_EXPORT bool | isInDynSymtab () const |
| SYMTAB_EXPORT bool | isInSymtab () const |
| SYMTAB_EXPORT bool | isAbsolute () const |
| SYMTAB_EXPORT bool | isCommonStorage () const |
| SYMTAB_EXPORT bool | isFunction () const |
| SYMTAB_EXPORT bool | setFunction (Function *func) |
| SYMTAB_EXPORT Function * | getFunction () const |
| SYMTAB_EXPORT bool | isVariable () const |
| SYMTAB_EXPORT bool | setVariable (Variable *var) |
| SYMTAB_EXPORT Variable * | getVariable () const |
| SYMTAB_EXPORT SymbolVisibility | getVisibility () const |
| SYMTAB_EXPORT int | getIndex () const |
| SYMTAB_EXPORT bool | setIndex (int index) |
| SYMTAB_EXPORT int | getStrIndex () const |
| SYMTAB_EXPORT bool | setStrIndex (int strindex) |
| SYMTAB_EXPORT void | setReferringSymbol (Symbol *referringSymbol) |
| SYMTAB_EXPORT Symbol * | getReferringSymbol () |
| SYMTAB_EXPORT bool | setOffset (Offset newOffset) |
| SYMTAB_EXPORT bool | setPtrOffset (Offset newOffset) |
| SYMTAB_EXPORT bool | setLocalTOC (Offset localTOC) |
| SYMTAB_EXPORT bool | setSize (unsigned ns) |
| SYMTAB_EXPORT bool | setRegion (Region *r) |
| SYMTAB_EXPORT bool | setModule (Module *mod) |
| SYMTAB_EXPORT bool | setMangledName (std::string name) |
| SYMTAB_EXPORT bool | setSymbolType (SymbolType sType) |
| SYMTAB_EXPORT SymbolTag | tag () const |
| SYMTAB_EXPORT bool | setDynamic (bool d) |
| SYMTAB_EXPORT bool | setAbsolute (bool a) |
| SYMTAB_EXPORT bool | setCommonStorage (bool cs) |
| SYMTAB_EXPORT bool | setVersionFileName (std::string &fileName) |
| SYMTAB_EXPORT bool | setVersions (std::vector< std::string > &vers) |
| SYMTAB_EXPORT bool | setVersionNum (unsigned verNum) |
| SYMTAB_EXPORT void | setVersionHidden () |
| SYMTAB_EXPORT bool | getVersionFileName (std::string &fileName) |
| SYMTAB_EXPORT bool | getVersions (std::vector< std::string > *&vers) |
| SYMTAB_EXPORT bool | getVersionNum (unsigned &verNum) |
| SYMTAB_EXPORT bool | getVersionHidden () |
| int | getInternalType () |
| void | setInternalType (int i) |
| SYMTAB_EXPORT Serializable * | serialize_impl (SerializerBase *, const char *tag="Symbol") THROW_SPEC(SerializerError) |
| template<class T > | |
| AN_INLINE bool | addAnnotation (const T *a, AnnotationClass< T > &a_id) |
| bool | operator== (AnnotatableSparse &cmp) |
| template<class T > | |
| AN_INLINE bool | getAnnotation (T *&a, AnnotationClass< T > &a_id) const |
| template<class T > | |
| bool | removeAnnotation (AnnotationClass< T > &a_id) |
| void | serializeAnnotations (SerializerBase *sb, const char *) |
| void | annotationsReport () |
Static Public Member Functions | |
| static const char * | symbolType2Str (SymbolType t) |
| static const char * | symbolLinkage2Str (SymbolLinkage t) |
| static const char * | symbolTag2Str (SymbolTag t) |
| static const char * | symbolVisibility2Str (SymbolVisibility t) |
| static SYMTAB_EXPORT Symbol * | magicEmitElfSymbol () |
Static Public Attributes | |
| static std::string | emptyString |
Private Member Functions | |
| void | restore_module_and_region (SerializerBase *, std::string &, Offset) THROW_SPEC(SerializerError) |
Private Attributes | |
| Module * | module_ |
| SymbolType | type_ |
| int | internal_type_ |
| SymbolLinkage | linkage_ |
| SymbolVisibility | visibility_ |
| Offset | offset_ |
| Offset | ptr_offset_ |
| Offset | localTOC_ |
| Region * | region_ |
| Symbol * | referring_ |
| unsigned | size_ |
| bool | isDynamic_ |
| bool | isAbsolute_ |
| Aggregate * | aggregate_ |
| std::string | mangledName_ |
| std::string | prettyName_ |
| std::string | typedName_ |
| SymbolTag | tag_ |
| int | index_ |
| int | strindex_ |
| bool | isCommonStorage_ |
| std::vector< std::string > | verNames_ |
| bool | versionHidden_ |
Friends | |
| class | typeCommon |
| class | Symtab |
| class | AObject |
| class | Object |
| class | Aggregate |
| class | relocationEntry |
| std::string | parseStabString (Module *, int linenum, char *, int, typeCommon *) |
| std::ostream & | operator<< (std::ostream &os, const Symbol &s) |
Definition at line 71 of file Symbol.h.
typedef dyn_hash_map<void *, void *, void_ptr_hasher> Dyninst::AnnotatableSparse::annos_by_type_t [inherited] |
Definition at line 505 of file Annotatable.h.
typedef std::vector<annos_by_type_t *> Dyninst::AnnotatableSparse::annos_t [inherited] |
Definition at line 508 of file Annotatable.h.
| Symbol::Symbol | ( | ) |
Definition at line 476 of file Symbol.C.
Referenced by magicEmitElfSymbol().
| Symbol::Symbol | ( | const std::string & | name, | |
| SymbolType | t, | |||
| SymbolLinkage | l, | |||
| SymbolVisibility | v, | |||
| Offset | o, | |||
| Module * | module = NULL, |
|||
| Region * | r = NULL, |
|||
| unsigned | s = 0, |
|||
| bool | d = false, |
|||
| bool | a = false, |
|||
| int | index = -1, |
|||
| int | strindex = -1, |
|||
| bool | cs = false | |||
| ) |
| Symbol::~Symbol | ( | ) |
Definition at line 540 of file Symbol.C.
References FILE__, fprintf, Dyninst::AnnotatableSparse::getAnnotation(), Dyninst::AnnotatableSparse::removeAnnotation(), and SymbolFileNameAnno.
| AN_INLINE bool Dyninst::AnnotatableSparse::addAnnotation | ( | const T * | a, | |
| AnnotationClass< T > & | a_id | |||
| ) | [inline, inherited] |
Definition at line 754 of file Annotatable.h.
References Dyninst::annotatable_printf(), FILE__, fprintf, Dyninst::getExistingOutputSB(), Dyninst::AnnotationClassBase::getID(), Dyninst::AnnotationClassBase::getName(), Dyninst::AnnotationClassBase::getSerializeFunc(), Dyninst::ser_operation(), Dyninst::serialize_post_annotation(), Dyninst::sp_add_anno, and Dyninst::sparse.
Referenced by Dyninst::SymtabAPI::parseStabString().
| void Dyninst::AnnotatableSparse::annotationsReport | ( | ) | [inline, inherited] |
Definition at line 932 of file Annotatable.h.
References FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, and getTypeName().
| AN_INLINE bool Dyninst::AnnotatableSparse::getAnnotation | ( | T *& | a, | |
| AnnotationClass< T > & | a_id | |||
| ) | const [inline, inherited] |
Definition at line 818 of file Annotatable.h.
Referenced by Dyninst::SymtabAPI::Function::addLocalVar(), Dyninst::SymtabAPI::Function::addParam(), Dyninst::SymtabAPI::Symtab::addUserRegion(), Dyninst::SymtabAPI::Symtab::addUserType(), Dyninst::SymtabAPI::Function::findLocalVariable(), Dyninst::SymtabAPI::Symtab::getAllNewRegions(), Dyninst::SymtabAPI::Function::getLocalVariables(), Dyninst::SymtabAPI::Function::getParams(), getVersionFileName(), getVersions(), Dyninst::SymtabAPI::parseStabString(), Dyninst::SymtabAPI::Function::setupParams(), setVersionFileName(), setVersions(), Dyninst::SymtabAPI::Function::~Function(), ~Symbol(), and Dyninst::SymtabAPI::Symtab::~Symtab().
| SYMTAB_EXPORT Function * Symbol::getFunction | ( | ) | const |
Definition at line 229 of file Symbol.C.
References aggregate_.
Referenced by Dyninst::SymtabAPI::Symtab::createFunction(), and isFunction().
| SYMTAB_EXPORT int Dyninst::SymtabAPI::Symbol::getIndex | ( | ) | const [inline] |
Definition at line 180 of file Symbol.h.
References index_.
Referenced by sortByIndex::operator()().
| int Dyninst::SymtabAPI::Symbol::getInternalType | ( | ) | [inline] |
| SYMTAB_EXPORT SymbolLinkage Dyninst::SymtabAPI::Symbol::getLinkage | ( | ) | const [inline] |
Definition at line 158 of file Symbol.h.
References linkage_.
Referenced by Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), print_symbols(), Dyninst::SymtabAPI::emitElfStatic::resolveSymbols(), and Dyninst::SymtabAPI::symbol_compare().
| SYMTAB_EXPORT Offset Dyninst::SymtabAPI::Symbol::getLocalTOC | ( | ) | const [inline] |
| SYMTAB_EXPORT const string & Symbol::getMangledName | ( | ) | const |
Definition at line 179 of file Symbol.C.
References mangledName_.
Referenced by Dyninst::SymtabAPI::Symtab::addExternalSymbolReference(), Dyninst::SymtabAPI::Region::addRelocationEntry(), Dyninst::SymtabAPI::Aggregate::addSymbol(), Dyninst::SymtabAPI::Symtab::addSymbolToIndices(), Dyninst::SymtabAPI::Aggregate::Aggregate(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), Dyninst::SymtabAPI::Symtab::deleteSymbolFromIndices(), Dyninst::SymtabAPI::Symtab::demangleSymbol(), Dyninst::SymtabAPI::Symtab::doNotAggregate(), Dyninst::SymtabAPI::SymtabReader::getSymbolName(), Dyninst::SymtabAPI::relocationEntry::operator==(), print_symbols(), Dyninst::SymtabAPI::Symtab::rebuild_symbol_hashes(), Dyninst::SymtabAPI::emitElfStatic::resolveSymbols(), setVersionFileName(), setVersions(), and Dyninst::SymtabAPI::Region::updateRelocations().
| SYMTAB_EXPORT Module* Dyninst::SymtabAPI::Symbol::getModule | ( | ) | const [inline] |
Definition at line 155 of file Symbol.h.
References module_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), Dyninst::SymtabAPI::Aggregate::addSymbol(), Dyninst::SymtabAPI::Aggregate::Aggregate(), Dyninst::SymtabAPI::Symtab::demangleSymbol(), and print_symbols().
| SYMTAB_EXPORT Offset Dyninst::SymtabAPI::Symbol::getOffset | ( | ) | const [inline] |
Definition at line 159 of file Symbol.h.
References offset_.
Referenced by Dyninst::SymtabAPI::Aggregate::addSymbol(), Dyninst::SymtabAPI::Symtab::addSymbolToAggregates(), Dyninst::SymtabAPI::Symtab::addSymbolToIndices(), Dyninst::SymtabAPI::Aggregate::Aggregate(), Dyninst::SymtabAPI::emitElfStatic::archSpecificRelocation(), Dyninst::SymtabAPI::Aggregate::changeSymbolOffset(), Dyninst::SymtabAPI::Symtab::changeType(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), Dyninst::SymtabAPI::Symtab::deleteSymbolFromIndices(), Dyninst::SymtabAPI::emitElfStatic::findOrCreateStub(), Dyninst::SymtabAPI::Symtab::fixSymModule(), Dyninst::SymtabAPI::Symtab::fixSymRegion(), Dyninst::SymtabAPI::Symtab::fixup_SymbolAddr(), Dyninst::SymtabAPI::SymtabReader::getSymbolOffset(), Dyninst::SymtabAPI::SymtabReader::getSymbolTOC(), Dyninst::SymtabAPI::Object::handle_opd_symbol(), Dyninst::SymtabAPI::relocationEntry::operator==(), Dyninst::SymtabAPI::Aggregate::operator==(), Dyninst::SymtabAPI::Object::parse_dynamicSymbols(), Dyninst::SymtabAPI::Object::parseStabTypes(), print_symbols(), Dyninst::SymtabAPI::LinkMap::printBySymtab(), Dyninst::SymtabAPI::Symtab::rebuild_symbol_hashes(), Dyninst::SymtabAPI::Aggregate::removeSymbolInt(), Dyninst::SymtabAPI::emitElfStatic::resolveSymbols(), sort_by_addr(), Dyninst::SymtabAPI::symbol_compare(), and Dyninst::SymtabAPI::AddressLookup::symToAddress().
| SYMTAB_EXPORT const string & Symbol::getPrettyName | ( | ) | const |
Definition at line 184 of file Symbol.C.
References prettyName_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), Dyninst::SymtabAPI::Aggregate::addSymbol(), Dyninst::SymtabAPI::Symtab::addSymbolToIndices(), Dyninst::SymtabAPI::Aggregate::Aggregate(), Dyninst::SymtabAPI::Symtab::deleteSymbolFromIndices(), Dyninst::SymtabAPI::LinkMap::printBySymtab(), Dyninst::SymtabAPI::Symtab::rebuild_symbol_hashes(), and Dyninst::SymtabAPI::emitElfStatic::resolveSymbols().
| SYMTAB_EXPORT Offset Dyninst::SymtabAPI::Symbol::getPtrOffset | ( | ) | const [inline] |
Definition at line 160 of file Symbol.h.
References ptr_offset_.
Referenced by Dyninst::SymtabAPI::emitElf64::createElfSymbol().
| Symbol * Symbol::getReferringSymbol | ( | ) |
Definition at line 560 of file Symbol.C.
References referring_.
Referenced by Dyninst::SymtabAPI::emitElf::createElfSymbol(), and Dyninst::SymtabAPI::emitElf64::createElfSymbol().
| SYMTAB_EXPORT Region* Dyninst::SymtabAPI::Symbol::getRegion | ( | ) | const [inline] |
Definition at line 163 of file Symbol.h.
References region_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbolToAggregates(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), Dyninst::SymtabAPI::Symtab::demangleSymbol(), Dyninst::SymtabAPI::Symtab::doNotAggregate(), Dyninst::SymtabAPI::Symtab::extractSymbolsFromFile(), Dyninst::SymtabAPI::Symtab::fixSymRegion(), Dyninst::SymtabAPI::Aggregate::getRegion(), Dyninst::SymtabAPI::Object::parse_all_relocations(), and print_symbols().
| SYMTAB_EXPORT unsigned Dyninst::SymtabAPI::Symbol::getSize | ( | ) | const [inline] |
Definition at line 162 of file Symbol.h.
References size_.
Referenced by Dyninst::SymtabAPI::Symtab::addExternalSymbolReference(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), Dyninst::SymtabAPI::Aggregate::getSize(), Dyninst::SymtabAPI::SymtabReader::getSymbolSize(), Dyninst::SymtabAPI::Aggregate::operator==(), print_symbols(), and Dyninst::SymtabAPI::LinkMap::printBySymtab().
| SYMTAB_EXPORT int Dyninst::SymtabAPI::Symbol::getStrIndex | ( | ) | const [inline] |
| Symtab * Symbol::getSymtab | ( | ) | const |
Definition at line 472 of file Symbol.C.
References Dyninst::SymtabAPI::Module::exec(), and module_.
Referenced by Dyninst::SymtabAPI::Symtab::addExternalSymbolReference(), Dyninst::SymtabAPI::Symtab::addSymbol(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), Dyninst::SymtabAPI::Function::getSize(), Dyninst::SymtabAPI::SymtabReader::getSymbolTOC(), and Dyninst::SymtabAPI::emitElfStatic::resolveSymbols().
| SYMTAB_EXPORT SymbolType Dyninst::SymtabAPI::Symbol::getType | ( | ) | const [inline] |
Definition at line 157 of file Symbol.h.
References type_.
Referenced by Dyninst::SymtabAPI::Symtab::addExternalSymbolReference(), Dyninst::SymtabAPI::Symtab::addSymbolToAggregates(), Dyninst::SymtabAPI::Symtab::demangleSymbol(), elfSymType(), Dyninst::SymtabAPI::Symtab::fixSymRegion(), Dyninst::SymtabAPI::Aggregate::operator==(), Dyninst::SymtabAPI::Object::parse_all_relocations(), print_symbols(), Dyninst::SymtabAPI::emitElfStatic::resolveSymbols(), and Dyninst::SymtabAPI::symbol_compare().
| SYMTAB_EXPORT const string & Symbol::getTypedName | ( | ) | const |
Definition at line 189 of file Symbol.C.
References typedName_.
Referenced by Dyninst::SymtabAPI::Aggregate::addSymbol(), Dyninst::SymtabAPI::Symtab::addSymbolToIndices(), Dyninst::SymtabAPI::Aggregate::Aggregate(), Dyninst::SymtabAPI::Symtab::deleteSymbolFromIndices(), Dyninst::SymtabAPI::SymtabReader::getDemangledName(), and Dyninst::SymtabAPI::Symtab::rebuild_symbol_hashes().
| SYMTAB_EXPORT Variable * Symbol::getVariable | ( | ) | const |
Definition at line 247 of file Symbol.C.
References aggregate_.
Referenced by Dyninst::SymtabAPI::Symtab::createVariable(), and isVariable().
| SYMTAB_EXPORT bool Symbol::getVersionFileName | ( | std::string & | fileName | ) |
Definition at line 345 of file Symbol.C.
References FILE__, fprintf, Dyninst::AnnotatableSparse::getAnnotation(), and SymbolFileNameAnno.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), and print_symbols().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::getVersionHidden | ( | ) | [inline] |
Definition at line 212 of file Symbol.h.
References versionHidden_.
Referenced by Dyninst::SymtabAPI::emitElf::createElfSymbol(), and Dyninst::SymtabAPI::emitElf64::createElfSymbol().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::getVersionNum | ( | unsigned & | verNum | ) |
| SYMTAB_EXPORT bool Symbol::getVersions | ( | std::vector< std::string > *& | vers | ) |
Definition at line 364 of file Symbol.C.
References FILE__, fprintf, Dyninst::AnnotatableSparse::getAnnotation(), and SymbolVersionNamesAnno.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), and print_symbols().
| SYMTAB_EXPORT SymbolVisibility Dyninst::SymtabAPI::Symbol::getVisibility | ( | ) | const [inline] |
Definition at line 178 of file Symbol.h.
References visibility_.
Referenced by Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), and print_symbols().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::isAbsolute | ( | ) | const [inline] |
Definition at line 167 of file Symbol.h.
References isAbsolute_.
Referenced by Dyninst::SymtabAPI::emitElf::createElfSymbol(), Dyninst::SymtabAPI::emitElf64::createElfSymbol(), Dyninst::SymtabAPI::Symtab::demangleSymbol(), Dyninst::SymtabAPI::Symtab::extractSymbolsFromFile(), and print_symbols().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::isCommonStorage | ( | ) | const [inline] |
Definition at line 168 of file Symbol.h.
References isCommonStorage_.
Referenced by Dyninst::SymtabAPI::Symtab::demangleSymbol(), and Dyninst::SymtabAPI::Symtab::extractSymbolsFromFile().
| SYMTAB_EXPORT bool Symbol::isFunction | ( | ) | const |
Definition at line 218 of file Symbol.C.
References getFunction().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::isInDynSymtab | ( | ) | const [inline] |
Definition at line 165 of file Symbol.h.
References isDynamic_, ST_DELETED, and type_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), and print_symbols().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::isInSymtab | ( | ) | const [inline] |
Definition at line 166 of file Symbol.h.
References isDynamic_, ST_DELETED, and type_.
Referenced by print_symbols().
| SYMTAB_EXPORT bool Symbol::isVariable | ( | ) | const |
Definition at line 236 of file Symbol.C.
References getVariable().
| Symbol * Symbol::magicEmitElfSymbol | ( | ) | [static] |
Definition at line 164 of file Symbol.C.
References SL_LOCAL, ST_NOTYPE, SV_DEFAULT, and Symbol().
Referenced by Dyninst::SymtabAPI::emitElf::createSymbolTables(), and Dyninst::SymtabAPI::emitElf64::createSymbolTables().
| bool Dyninst::AnnotatableSparse::operator== | ( | AnnotatableSparse & | cmp | ) | [inline, inherited] |
Definition at line 668 of file Annotatable.h.
References FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, Dyninst::AnnotatableSparse::getAnnos(), and Dyninst::AnnotationClassBase::getCmpFunc().
| bool Symbol::operator== | ( | const Symbol & | s | ) | const |
Definition at line 437 of file Symbol.C.
References Dyninst::SymtabAPI::Module::fullName(), Dyninst::SymtabAPI::Region::getDiskOffset(), isAbsolute_, isCommonStorage_, isDynamic_, linkage_, mangledName_, module_, offset_, prettyName_, region_, size_, type_, typedName_, and versionHidden_.
| bool Dyninst::AnnotatableSparse::removeAnnotation | ( | AnnotationClass< T > & | a_id | ) | [inline, inherited] |
Definition at line 843 of file Annotatable.h.
References Dyninst::annotation_debug_flag(), FILE__, fprintf, Dyninst::AnnotationClassBase::getID(), and Dyninst::AnnotationClassBase::getName().
Referenced by Dyninst::SymtabAPI::Function::~Function(), and ~Symbol().
| void Symbol::restore_module_and_region | ( | SerializerBase * | , | |
| std::string & | , | |||
| Offset | ||||
| ) | [private] |
| Serializable * Symbol::serialize_impl | ( | SerializerBase * | , | |
| const char * | tag = "Symbol" | |||
| ) |
| void Dyninst::AnnotatableSparse::serializeAnnotations | ( | SerializerBase * | sb, | |
| const char * | ||||
| ) | [inline, inherited] |
Definition at line 869 of file Annotatable.h.
References Dyninst::ser_rec_t::acb, Dyninst::add_annotations(), Dyninst::ser_rec_t::data, FILE__, Dyninst::AnnotationClassBase::findAnnotationClass(), fprintf, Dyninst::get_serializer_index(), Dyninst::AnnotationClassBase::getSerializeFunc(), Dyninst::is_input(), Dyninst::is_output(), Dyninst::ser_rec_t::parent_id, Dyninst::serialize_annotation_list(), Dyninst::ser_rec_t::sod, and Dyninst::sparse.
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::setAbsolute | ( | bool | a | ) | [inline] |
Definition at line 201 of file Symbol.h.
References isAbsolute_.
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::setCommonStorage | ( | bool | cs | ) | [inline] |
Definition at line 202 of file Symbol.h.
References isCommonStorage_.
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::setDynamic | ( | bool | d | ) | [inline] |
Definition at line 200 of file Symbol.h.
References isDynamic_.
Referenced by Dyninst::SymtabAPI::Object::FindInterestingSections().
| SYMTAB_EXPORT bool Symbol::setFunction | ( | Function * | func | ) |
Definition at line 223 of file Symbol.C.
References aggregate_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbolToAggregates().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::setIndex | ( | int | index | ) | [inline] |
| void Dyninst::SymtabAPI::Symbol::setInternalType | ( | int | i | ) | [inline] |
Definition at line 220 of file Symbol.h.
References internal_type_.
Referenced by Dyninst::SymtabAPI::Object::parse_dynamicSymbols().
| bool Symbol::setLocalTOC | ( | Offset | localTOC | ) |
| SYMTAB_EXPORT bool Symbol::setMangledName | ( | std::string | name | ) |
Definition at line 384 of file Symbol.C.
References mangledName_, and setStrIndex().
| SYMTAB_EXPORT bool Symbol::setModule | ( | Module * | mod | ) |
Definition at line 212 of file Symbol.C.
References module_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), Dyninst::SymtabAPI::Symtab::createVariable(), and Dyninst::SymtabAPI::Symtab::fixSymModule().
| bool Symbol::setOffset | ( | Offset | newOffset | ) |
Definition at line 194 of file Symbol.C.
References offset_.
Referenced by Dyninst::SymtabAPI::Symtab::fixup_SymbolAddr().
| bool Symbol::setPtrOffset | ( | Offset | newOffset | ) |
Definition at line 200 of file Symbol.C.
References ptr_offset_.
| void Symbol::setReferringSymbol | ( | Symbol * | referringSymbol | ) |
Definition at line 555 of file Symbol.C.
References referring_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol().
| SYMTAB_EXPORT bool Symbol::setRegion | ( | Region * | r | ) |
Definition at line 258 of file Symbol.C.
References region_.
Referenced by Dyninst::SymtabAPI::Symtab::fixSymRegion().
| SYMTAB_EXPORT bool Symbol::setSize | ( | unsigned | ns | ) |
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::setStrIndex | ( | int | strindex | ) | [inline] |
| SYMTAB_EXPORT bool Symbol::setSymbolType | ( | SymbolType | sType | ) |
Definition at line 270 of file Symbol.C.
References Dyninst::SymtabAPI::Symtab::changeType(), Dyninst::SymtabAPI::Module::exec(), module_, ST_FUNCTION, ST_INDIRECT, ST_MODULE, ST_NOTYPE, ST_OBJECT, ST_UNKNOWN, and type_.
| SYMTAB_EXPORT bool Symbol::setVariable | ( | Variable * | var | ) |
Definition at line 241 of file Symbol.C.
References aggregate_.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbolToAggregates().
| SYMTAB_EXPORT bool Symbol::setVersionFileName | ( | std::string & | fileName | ) |
Definition at line 290 of file Symbol.C.
References Dyninst::AnnotatableSparse::addAnnotation(), FILE__, fprintf, Dyninst::AnnotatableSparse::getAnnotation(), getMangledName(), and SymbolFileNameAnno.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), and Dyninst::SymtabAPI::Object::parse_dynamicSymbols().
| SYMTAB_EXPORT void Dyninst::SymtabAPI::Symbol::setVersionHidden | ( | ) | [inline] |
Definition at line 207 of file Symbol.h.
References versionHidden_.
Referenced by Dyninst::SymtabAPI::Object::parse_dynamicSymbols().
| SYMTAB_EXPORT bool Dyninst::SymtabAPI::Symbol::setVersionNum | ( | unsigned | verNum | ) |
| SYMTAB_EXPORT bool Symbol::setVersions | ( | std::vector< std::string > & | vers | ) |
Definition at line 321 of file Symbol.C.
References Dyninst::AnnotatableSparse::addAnnotation(), FILE__, fprintf, Dyninst::AnnotatableSparse::getAnnotation(), getMangledName(), and SymbolVersionNamesAnno.
Referenced by Dyninst::SymtabAPI::Symtab::addSymbol(), and Dyninst::SymtabAPI::Object::parse_dynamicSymbols().
| const char * Symbol::symbolLinkage2Str | ( | SymbolLinkage | t | ) | [static] |
Definition at line 3526 of file Symtab.C.
References CASE_RETURN_STR, SL_GLOBAL, SL_LOCAL, SL_UNKNOWN, and SL_WEAK.
| const char * Symbol::symbolTag2Str | ( | SymbolTag | t | ) | [static] |
Definition at line 3539 of file Symtab.C.
References CASE_RETURN_STR, TAG_INTERNAL, TAG_LIBRARY, TAG_UNKNOWN, and TAG_USER.
| const char * Symbol::symbolType2Str | ( | SymbolType | t | ) | [static] |
Definition at line 3508 of file Symtab.C.
References CASE_RETURN_STR, ST_DELETED, ST_FUNCTION, ST_INDIRECT, ST_MODULE, ST_NOTYPE, ST_OBJECT, ST_SECTION, ST_TLS, and ST_UNKNOWN.
| const char * Symbol::symbolVisibility2Str | ( | SymbolVisibility | t | ) | [static] |
Definition at line 3552 of file Symtab.C.
References CASE_RETURN_STR, SV_DEFAULT, SV_HIDDEN, SV_INTERNAL, SV_PROTECTED, and SV_UNKNOWN.
| SYMTAB_EXPORT Symbol::SymbolTag Symbol::tag | ( | ) | const |
| std::ostream& operator<< | ( | std::ostream & | os, | |
| const Symbol & | s | |||
| ) | [friend] |
| std::string parseStabString | ( | Module * | , | |
| int | linenum, | |||
| char * | , | |||
| int | , | |||
| typeCommon * | ||||
| ) | [friend] |
friend class relocationEntry [friend] |
friend class typeCommon [friend] |
Aggregate* Dyninst::SymtabAPI::Symbol::aggregate_ [private] |
Definition at line 239 of file Symbol.h.
Referenced by Dyninst::SymtabAPI::Symtab::changeSymbolOffset(), Dyninst::SymtabAPI::Symtab::deleteSymbol(), getFunction(), getVariable(), setFunction(), and setVariable().
string Symbol::emptyString [static] |
int Dyninst::SymtabAPI::Symbol::index_ [private] |
Definition at line 246 of file Symbol.h.
Referenced by getIndex(), and setIndex().
int Dyninst::SymtabAPI::Symbol::internal_type_ [private] |
Definition at line 226 of file Symbol.h.
Referenced by getInternalType(), and setInternalType().
bool Dyninst::SymtabAPI::Symbol::isAbsolute_ [private] |
Definition at line 237 of file Symbol.h.
Referenced by isAbsolute(), operator==(), and setAbsolute().
bool Dyninst::SymtabAPI::Symbol::isCommonStorage_ [private] |
Definition at line 249 of file Symbol.h.
Referenced by isCommonStorage(), operator==(), and setCommonStorage().
bool Dyninst::SymtabAPI::Symbol::isDynamic_ [private] |
Definition at line 236 of file Symbol.h.
Referenced by isInDynSymtab(), isInSymtab(), operator==(), and setDynamic().
Definition at line 227 of file Symbol.h.
Referenced by getLinkage(), and operator==().
Offset Dyninst::SymtabAPI::Symbol::localTOC_ [private] |
Definition at line 231 of file Symbol.h.
Referenced by getLocalTOC(), and setLocalTOC().
std::string Dyninst::SymtabAPI::Symbol::mangledName_ [private] |
Definition at line 241 of file Symbol.h.
Referenced by getMangledName(), operator==(), and setMangledName().
Module* Dyninst::SymtabAPI::Symbol::module_ [private] |
Definition at line 224 of file Symbol.h.
Referenced by getModule(), getSymtab(), operator==(), setModule(), and setSymbolType().
Offset Dyninst::SymtabAPI::Symbol::offset_ [private] |
Definition at line 229 of file Symbol.h.
Referenced by Dyninst::SymtabAPI::Symtab::changeSymbolOffset(), getOffset(), operator==(), Dyninst::SymtabAPI::Object::parse_aout(), and setOffset().
std::string Dyninst::SymtabAPI::Symbol::prettyName_ [private] |
Definition at line 242 of file Symbol.h.
Referenced by Dyninst::SymtabAPI::Symtab::demangleSymbol(), getPrettyName(), and operator==().
Definition at line 230 of file Symbol.h.
Referenced by getPtrOffset(), and setPtrOffset().
Symbol* Dyninst::SymtabAPI::Symbol::referring_ [private] |
Definition at line 233 of file Symbol.h.
Referenced by getReferringSymbol(), and setReferringSymbol().
Region* Dyninst::SymtabAPI::Symbol::region_ [private] |
Definition at line 232 of file Symbol.h.
Referenced by getRegion(), operator==(), and setRegion().
unsigned Dyninst::SymtabAPI::Symbol::size_ [private] |
Definition at line 234 of file Symbol.h.
Referenced by getSize(), operator==(), and setSize().
int Dyninst::SymtabAPI::Symbol::strindex_ [private] |
Definition at line 247 of file Symbol.h.
Referenced by getStrIndex(), and setStrIndex().
SymbolTag Dyninst::SymtabAPI::Symbol::tag_ [private] |
SymbolType Dyninst::SymtabAPI::Symbol::type_ [private] |
Definition at line 225 of file Symbol.h.
Referenced by getType(), isInDynSymtab(), isInSymtab(), operator==(), and setSymbolType().
std::string Dyninst::SymtabAPI::Symbol::typedName_ [private] |
Definition at line 243 of file Symbol.h.
Referenced by Dyninst::SymtabAPI::Symtab::demangleSymbol(), getTypedName(), and operator==().
std::vector<std::string> Dyninst::SymtabAPI::Symbol::verNames_ [private] |
bool Dyninst::SymtabAPI::Symbol::versionHidden_ [private] |
Definition at line 253 of file Symbol.h.
Referenced by getVersionHidden(), operator==(), and setVersionHidden().
Definition at line 228 of file Symbol.h.
Referenced by getVisibility().
1.6.1