#include <algorithm>#include "Symtab.h"#include "emitElf-64.h"#include "emitElfStatic.h"#include "debug.h"#include "common/h/pathName.h"Go to the source code of this file.
Data Structures | |
| struct | sortByIndex |
Defines | |
| #define | DT_GNU_HASH 0x6ffffef5 |
| #define | DT_GNU_CONFLICT 0x6ffffef8 |
Functions | |
| void | symtab_log_perror (const char *msg) |
| const char * | pdelf_get_shnames (Elf_X *elf) |
| unsigned int | elfHash (const char *name) |
| void | setSymtabError (SymtabError new_err) |
| static void | setVersion () |
| static int | elfSymType (Symbol *sym) |
| static int | elfSymBind (Symbol::SymbolLinkage sLinkage) |
| static int | elfSymVisibility (Symbol::SymbolVisibility sVisibility) |
Variables | |
| const char * | STRTAB_NAME |
| const char * | SYMTAB_NAME |
| const char * | INTERP_NAME |
| unsigned long | bgq_sh_flags = SHF_EXECINSTR | SHF_ALLOC | SHF_WRITE |
| bool | isBlueGeneQ = false |
| bool | isStaticBinary = false |
| static bool | libelfso0Flag |
| static bool | libelfso1Flag |
| static int | libelfso1version_major |
| static int | libelfso1version_minor |
| #define DT_GNU_CONFLICT 0x6ffffef8 |
Definition at line 1159 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf::createDynamicSection(), and Dyninst::SymtabAPI::emitElf64::createDynamicSection().
| #define DT_GNU_HASH 0x6ffffef5 |
Definition at line 1156 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf::updateDynamic(), and Dyninst::SymtabAPI::emitElf64::updateDynamic().
| static int elfSymBind | ( | Symbol::SymbolLinkage | sLinkage | ) | [static] |
Definition at line 156 of file emitElf-64.C.
References Dyninst::SymtabAPI::Symbol::SL_GLOBAL, Dyninst::SymtabAPI::Symbol::SL_LOCAL, and Dyninst::SymtabAPI::Symbol::SL_WEAK.
Referenced by Dyninst::SymtabAPI::emitElf64::createElfSymbol().
| static int elfSymType | ( | Symbol * | sym | ) | [static] |
Definition at line 140 of file emitElf-64.C.
References Dyninst::SymtabAPI::Symbol::getInternalType(), Dyninst::SymtabAPI::Symbol::getType(), Dyninst::SymtabAPI::Symbol::ST_FUNCTION, Dyninst::SymtabAPI::Symbol::ST_INDIRECT, Dyninst::SymtabAPI::Symbol::ST_MODULE, Dyninst::SymtabAPI::Symbol::ST_NOTYPE, Dyninst::SymtabAPI::Symbol::ST_OBJECT, Dyninst::SymtabAPI::Symbol::ST_SECTION, Dyninst::SymtabAPI::Symbol::ST_TLS, and Dyninst::SymtabAPI::Symbol::ST_UNKNOWN.
Referenced by Dyninst::SymtabAPI::emitElf64::createElfSymbol().
| static int elfSymVisibility | ( | Symbol::SymbolVisibility | sVisibility | ) | [static] |
Definition at line 166 of file emitElf-64.C.
References Dyninst::SymtabAPI::Symbol::SV_DEFAULT, Dyninst::SymtabAPI::Symbol::SV_HIDDEN, Dyninst::SymtabAPI::Symbol::SV_INTERNAL, and Dyninst::SymtabAPI::Symbol::SV_PROTECTED.
Referenced by Dyninst::SymtabAPI::emitElf64::createElfSymbol().
| const char* pdelf_get_shnames | ( | Elf_X * | elf | ) |
Definition at line 128 of file Object-elf.C.
Referenced by Dyninst::SymtabAPI::Object::loaded_elf().
| void setSymtabError | ( | SymtabError | new_err | ) |
Definition at line 103 of file Symtab.C.
Referenced by Dyninst::SymtabAPI::emitElf::createSymbolTables(), Dyninst::SymtabAPI::emitElf64::createSymbolTables(), and Dyninst::SymtabAPI::Object::getRegValueAtFrame().
| static void setVersion | ( | ) | [static] |
Definition at line 83 of file emitElf-64.C.
References fprintf, getVMMaps, libelfso0Flag, libelfso1Flag, libelfso1version_major, libelfso1version_minor, and resolve_file_path().
Referenced by Dyninst::SymtabAPI::emitElf64::emitElf64().
| void symtab_log_perror | ( | const char * | msg | ) |
Definition at line 87 of file Symtab.C.
Referenced by Dyninst::SymtabAPI::emitElf::createSymbolTables(), Dyninst::SymtabAPI::emitElf64::createSymbolTables(), and Dyninst::SymtabAPI::Symtab::Symtab().
| unsigned long bgq_sh_flags = SHF_EXECINSTR | SHF_ALLOC | SHF_WRITE |
Definition at line 63 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf64::createLoadableSections(), and Dyninst::SymtabAPI::emitElf64::createNewPhdrRegion().
| const char* INTERP_NAME |
Definition at line 311 of file Object-elf.C.
Referenced by Dyninst::SymtabAPI::Object::loaded_elf().
| bool isBlueGeneQ = false |
Definition at line 64 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf64::createLoadableSections(), Dyninst::SymtabAPI::emitElf64::createNewPhdrRegion(), Dyninst::SymtabAPI::emitElf64::emitElf64(), Dyninst::SymtabAPI::emitElf64::fixPhdrs(), and Dyninst::SymtabAPI::Symtab::getFreeOffset().
| bool isStaticBinary = false |
Definition at line 65 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf64::emitElf64(), Dyninst::SymtabAPI::emitElf64::fixPhdrs(), and Dyninst::SymtabAPI::emitElf64::updateDynamic().
bool libelfso0Flag [static] |
Definition at line 78 of file emitElf-64.C.
Referenced by setVersion().
bool libelfso1Flag [static] |
Definition at line 79 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf64::hasPHdrSectionBug(), and setVersion().
int libelfso1version_major [static] |
Definition at line 80 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf64::hasPHdrSectionBug(), and setVersion().
int libelfso1version_minor [static] |
Definition at line 81 of file emitElf-64.C.
Referenced by Dyninst::SymtabAPI::emitElf64::hasPHdrSectionBug(), and setVersion().
| const char* STRTAB_NAME |
Definition at line 316 of file Object-elf.C.
Referenced by Dyninst::SymtabAPI::Object::loaded_elf().
| const char* SYMTAB_NAME |
Definition at line 315 of file Object-elf.C.
Referenced by Dyninst::SymtabAPI::Object::loaded_elf().
1.6.1