gem5
|
#include <aout_object.hh>
Public Member Functions | |
virtual | ~AoutObject () |
virtual bool | loadAllSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=maxAddr) |
virtual bool | loadGlobalSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=maxAddr) |
virtual bool | loadLocalSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr addr_mask=maxAddr) |
Public Member Functions inherited from ObjectFile | |
virtual | ~ObjectFile () |
virtual bool | loadSections (PortProxy &mem_proxy, Addr mask=maxAddr, Addr offset=0) |
virtual bool | loadWeakSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr mask=maxAddr) |
virtual ObjectFile * | getInterpreter () const |
virtual bool | relocatable () const |
virtual Addr | mapSize () const |
virtual void | updateBias (Addr bias_addr) |
virtual Addr | bias () const |
virtual bool | hasTLS () |
Arch | getArch () const |
OpSys | getOpSys () const |
Addr | entryPoint () const |
Addr | globalPointer () const |
Addr | textBase () const |
Addr | dataBase () const |
Addr | bssBase () const |
size_t | textSize () const |
size_t | dataSize () const |
size_t | bssSize () const |
void | setTextBase (Addr a) |
Static Public Member Functions | |
static ObjectFile * | tryFile (const std::string &fname, size_t len, uint8_t *data) |
Protected Member Functions | |
AoutObject (const std::string &_filename, size_t _len, uint8_t *_data, Arch _arch, OpSys _opSys) | |
Protected Member Functions inherited from ObjectFile | |
ObjectFile (const std::string &_filename, size_t _len, uint8_t *_data, Arch _arch, OpSys _opSys) | |
bool | loadSection (Section *sec, PortProxy &mem_proxy, Addr mask, Addr offset=0) |
void | setGlobalPointer (Addr global_ptr) |
Protected Attributes | |
aout_exechdr * | execHdr |
Protected Attributes inherited from ObjectFile | |
const std::string | filename |
uint8_t * | fileData |
size_t | len |
Arch | arch |
OpSys | opSys |
Addr | entry |
Addr | globalPtr |
Section | text |
Section | data |
Section | bss |
Additional Inherited Members | |
Public Types inherited from ObjectFile | |
enum | Arch { UnknownArch, Alpha, SPARC64, SPARC32, Mips, X86_64, I386, Arm64, Arm, Thumb, Power, Riscv } |
enum | OpSys { UnknownOpSys, Tru64, Linux, Solaris, LinuxArmOABI, FreeBSD } |
Static Public Attributes inherited from ObjectFile | |
static const Addr | maxAddr = std::numeric_limits<Addr>::max() |
Definition at line 39 of file aout_object.hh.
|
protected |
Definition at line 56 of file aout_object.cc.
References ObjectFile::Section::baseAddr, aout_exechdr::bsize, ObjectFile::bss, ObjectFile::data, DPRINTFR, aout_exechdr::dsize, aout_exechdr::entry, ObjectFile::entry, execHdr, ObjectFile::fileData, ObjectFile::Section::fileImage, N_BSSADDR, N_DATADDR, N_DATOFF, N_TXTADDR, N_TXTOFF, ObjectFile::Section::size, ObjectFile::text, and aout_exechdr::tsize.
|
inlinevirtual |
Definition at line 49 of file aout_object.hh.
|
virtual |
Implements ObjectFile.
Definition at line 84 of file aout_object.cc.
|
virtual |
Implements ObjectFile.
Definition at line 91 of file aout_object.cc.
|
virtual |
Implements ObjectFile.
Definition at line 99 of file aout_object.cc.
|
static |
Definition at line 43 of file aout_object.cc.
References ObjectFile::Alpha, N_BADMAG, and ObjectFile::UnknownOpSys.
Referenced by createObjectFile().
|
protected |
Definition at line 42 of file aout_object.hh.
Referenced by AoutObject().