|
gem5
v19.0.0.0
|
#include <object_file.hh>
Public Types | |
| enum | Arch { UnknownArch, Alpha, SPARC64, SPARC32, Mips, X86_64, I386, Arm64, Arm, Thumb, Power, Riscv64, Riscv32 } |
| enum | OpSys { UnknownOpSys, Tru64, Linux, Solaris, LinuxArmOABI, FreeBSD } |
Public Member Functions | |
| virtual | ~ObjectFile () |
| virtual bool | loadAllSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr mask=MaxAddr) |
| virtual bool | loadGlobalSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr mask=MaxAddr) |
| virtual bool | loadLocalSymbols (SymbolTable *symtab, Addr base=0, Addr offset=0, Addr mask=MaxAddr) |
| 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 |
Public Member Functions inherited from ImageFile | |
| virtual MemoryImage | buildImage () const =0 |
Protected Member Functions | |
| ObjectFile (ImageFileDataPtr ifd) | |
Protected Member Functions inherited from ImageFile | |
| ImageFile (ImageFileDataPtr data) | |
| virtual | ~ImageFile () |
Protected Attributes | |
| Arch | arch = UnknownArch |
| OpSys | opSys = UnknownOpSys |
| Addr | entry = 0 |
Protected Attributes inherited from ImageFile | |
| ImageFileDataPtr | imageData |
Definition at line 45 of file object_file.hh.
| enum ObjectFile::Arch |
| Enumerator | |
|---|---|
| UnknownArch | |
| Alpha | |
| SPARC64 | |
| SPARC32 | |
| Mips | |
| X86_64 | |
| I386 | |
| Arm64 | |
| Arm | |
| Thumb | |
| Power | |
| Riscv64 | |
| Riscv32 | |
Definition at line 49 of file object_file.hh.
| enum ObjectFile::OpSys |
| Enumerator | |
|---|---|
| UnknownOpSys | |
| Tru64 | |
| Linux | |
| Solaris | |
| LinuxArmOABI | |
| FreeBSD | |
Definition at line 65 of file object_file.hh.
|
protected |
Definition at line 43 of file object_file.cc.
|
inlinevirtual |
Definition at line 81 of file object_file.hh.
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 120 of file object_file.hh.
Referenced by Process::getBias().
|
inline |
Definition at line 131 of file object_file.hh.
References entry.
Referenced by AlphaProcess::argsInit(), MipsProcess::argsInit(), RiscvProcess::argsInit(), PowerProcess::argsInit(), SparcProcess::argsInit(), ArmProcess::argsInit(), X86ISA::X86Process::argsInit(), ArmSystem::ArmSystem(), BareMetalRiscvSystem::BareMetalRiscvSystem(), Process::getStartPC(), ArmSystem::initState(), SparcSystem::SparcSystem(), and System::System().
|
inline |
Definition at line 124 of file object_file.hh.
References arch.
Referenced by ArmSystem::ArmSystem(), ArmSystem::getBootLoader(), and X86System::initState().
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 108 of file object_file.hh.
Referenced by Process::getInterpreter(), Process::init(), and Process::updateBias().
|
inline |
Definition at line 125 of file object_file.hh.
References opSys.
Referenced by ArmProcess::argsInit(), ArmProcess32::setSyscallReturn(), and ArmProcess64::setSyscallReturn().
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 122 of file object_file.hh.
|
inlinevirtual |
Reimplemented in ElfObject, and EcoffObject.
Definition at line 84 of file object_file.hh.
Referenced by mmapFunc().
|
inlinevirtual |
Reimplemented in ElfObject, and EcoffObject.
Definition at line 90 of file object_file.hh.
Referenced by AlphaSystem::AlphaSystem(), ArmSystem::ArmSystem(), FreebsdArmSystem::initState(), LinuxArmSystem::initState(), main(), Process::Process(), AnnotateDumpCallback::process(), SparcSystem::SparcSystem(), and System::System().
|
inlinevirtual |
Reimplemented in ElfObject, and EcoffObject.
Definition at line 96 of file object_file.hh.
Referenced by AlphaSystem::AlphaSystem(), main(), Process::Process(), AnnotateDumpCallback::process(), SparcSystem::SparcSystem(), and System::System().
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 102 of file object_file.hh.
Referenced by Process::Process().
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 111 of file object_file.hh.
References panic.
Referenced by Process::updateBias().
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 109 of file object_file.hh.
Referenced by Process::updateBias().
|
inlinevirtual |
Reimplemented in ElfObject.
Definition at line 116 of file object_file.hh.
References panic.
Referenced by Process::updateBias().
|
protected |
Definition at line 75 of file object_file.hh.
Referenced by AoutObject::AoutObject(), ElfObject::determineArch(), EcoffObject::EcoffObject(), and getArch().
|
protected |
Definition at line 128 of file object_file.hh.
Referenced by AoutObject::AoutObject(), EcoffObject::EcoffObject(), ElfObject::ElfObject(), entryPoint(), EcoffObject::loadGlobalSymbols(), EcoffObject::loadLocalSymbols(), and ElfObject::updateBias().
|
protected |
Definition at line 76 of file object_file.hh.
Referenced by ElfObject::determineOpSys(), EcoffObject::EcoffObject(), and getOpSys().