RTEMS Linker
0.0.1
RTEMS Tools Project
|
#include <rld-symbols.h>
Public Member Functions | |
symbol () | |
symbol (int index, const std::string &name, files::object &object, const elf::elf_sym &esym) | |
symbol (int index, const std::string &name, const elf::elf_sym &esym) | |
symbol (const std::string &name, const elf::elf_addr value=0) | |
symbol (const char *name, elf::elf_addr value=0) | |
int | index () const |
const std::string & | name () const |
const std::string & | demangled () const |
bool | is_cplusplus () const |
int | type () const |
int | binding () const |
int | section_index () const |
elf::elf_addr | value () const |
uint32_t | info () const |
files::object * | object () const |
void | set_object (files::object &obj) |
const elf::elf_sym & | esym () const |
int | references () const |
void | referenced () |
bool | operator< (const symbol &rhs) const |
void | output (std::ostream &out) const |
A symbol.
rld::symbols::symbol::symbol | ( | ) |
Default constructor. No symbol has been defined.
rld::symbols::symbol::symbol | ( | int | index, |
const std::string & | name, | ||
files::object & | object, | ||
const elf::elf_sym & | esym | ||
) |
Construct an exported symbol with a object file.
rld::symbols::symbol::symbol | ( | int | index, |
const std::string & | name, | ||
const elf::elf_sym & | esym | ||
) |
Construct a symbol with no object file and an ELF index.
rld::symbols::symbol::symbol | ( | const std::string & | name, |
const elf::elf_addr | value = 0 |
||
) |
Construct a linker symbol that is internally created.
rld::symbols::symbol::symbol | ( | const char * | name, |
elf::elf_addr | value = 0 |
||
) |
Construct a linker symbol that is internally created.
int rld::symbols::symbol::binding | ( | ) | const |
The symbol's binding, ie local, weak, or global.
const std::string & rld::symbols::symbol::demangled | ( | ) | const |
The symbol's demangled name.
const elf::elf_sym & rld::symbols::symbol::esym | ( | ) | const |
The ELF symbol.
int rld::symbols::symbol::index | ( | ) | const |
The symbol's index in the symtab section of the ELF file.
uint32_t rld::symbols::symbol::info | ( | ) | const |
The data of the symbol.
bool rld::symbols::symbol::is_cplusplus | ( | ) | const |
Is the symbol a C++ name ?
const std::string & rld::symbols::symbol::name | ( | ) | const |
The symbol's name.
rld::files::object * rld::symbols::symbol::object | ( | ) | const |
The symbol's object file name.
bool rld::symbols::symbol::operator< | ( | const symbol & | rhs | ) | const |
Less than operator for the map container.
void rld::symbols::symbol::output | ( | std::ostream & | out | ) | const |
Output to the a stream.
void rld::symbols::symbol::referenced | ( | ) |
Return the number of references.
|
inline |
Return the number of references.
int rld::symbols::symbol::section_index | ( | ) | const |
The symbol's section index.
void rld::symbols::symbol::set_object | ( | files::object & | obj | ) |
Set the symbol's object file name. Used when resolving unresolved symbols.
int rld::symbols::symbol::type | ( | ) | const |
The symbol's type.
elf::elf_addr rld::symbols::symbol::value | ( | ) | const |
The value of the symbol.