gem5  v22.1.0.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
gem5::loader::ObjectFile Class Reference

#include <object_file.hh>

Inheritance diagram for gem5::loader::ObjectFile:
gem5::loader::ImageFile gem5::loader::ElfObject gem5::loader::RawImage

Public Member Functions

virtual ~ObjectFile ()
 
virtual ObjectFilegetInterpreter () 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
 
ByteOrder getByteOrder () const
 
const SymbolTablesymtab () const
 
Addr entryPoint () const
 
- Public Member Functions inherited from gem5::loader::ImageFile
virtual MemoryImage buildImage () const =0
 

Protected Member Functions

 ObjectFile (ImageFileDataPtr ifd)
 
- Protected Member Functions inherited from gem5::loader::ImageFile
 ImageFile (ImageFileDataPtr data)
 
virtual ~ImageFile ()
 

Protected Attributes

Arch arch = UnknownArch
 
OpSys opSys = UnknownOpSys
 
ByteOrder byteOrder = ByteOrder::little
 
SymbolTable _symtab
 
Addr entry = 0
 
- Protected Attributes inherited from gem5::loader::ImageFile
ImageFileDataPtr imageData
 

Detailed Description

Definition at line 97 of file object_file.hh.

Constructor & Destructor Documentation

◆ ObjectFile()

gem5::loader::ObjectFile::ObjectFile ( ImageFileDataPtr  ifd)
protected

Definition at line 55 of file object_file.cc.

◆ ~ObjectFile()

virtual gem5::loader::ObjectFile::~ObjectFile ( )
inlinevirtual

Definition at line 109 of file object_file.hh.

Member Function Documentation

◆ bias()

virtual Addr gem5::loader::ObjectFile::bias ( ) const
inlinevirtual

Reimplemented in gem5::loader::ElfObject.

Definition at line 123 of file object_file.hh.

Referenced by gem5::Process::getBias().

◆ entryPoint()

Addr gem5::loader::ObjectFile::entryPoint ( ) const
inline

◆ getArch()

Arch gem5::loader::ObjectFile::getArch ( ) const
inline

◆ getByteOrder()

ByteOrder gem5::loader::ObjectFile::getByteOrder ( ) const
inline

◆ getInterpreter()

virtual ObjectFile* gem5::loader::ObjectFile::getInterpreter ( ) const
inlinevirtual

◆ getOpSys()

OpSys gem5::loader::ObjectFile::getOpSys ( ) const
inline

Definition at line 128 of file object_file.hh.

References opSys.

Referenced by gem5::ArmProcess::argsInit(), and gem5::PowerProcess::initState().

◆ hasTLS()

virtual bool gem5::loader::ObjectFile::hasTLS ( )
inlinevirtual

Reimplemented in gem5::loader::ElfObject.

Definition at line 125 of file object_file.hh.

◆ mapSize()

virtual Addr gem5::loader::ObjectFile::mapSize ( ) const
inlinevirtual

Reimplemented in gem5::loader::ElfObject.

Definition at line 114 of file object_file.hh.

References panic.

◆ relocatable()

virtual bool gem5::loader::ObjectFile::relocatable ( ) const
inlinevirtual

Reimplemented in gem5::loader::ElfObject.

Definition at line 112 of file object_file.hh.

◆ symtab()

const SymbolTable& gem5::loader::ObjectFile::symtab ( ) const
inline

◆ updateBias()

virtual void gem5::loader::ObjectFile::updateBias ( Addr  bias_addr)
inlinevirtual

Reimplemented in gem5::loader::ElfObject.

Definition at line 119 of file object_file.hh.

References panic.

Member Data Documentation

◆ _symtab

SymbolTable gem5::loader::ObjectFile::_symtab
protected

Definition at line 104 of file object_file.hh.

Referenced by gem5::loader::ElfObject::ElfObject(), and symtab().

◆ arch

Arch gem5::loader::ObjectFile::arch = UnknownArch
protected

Definition at line 100 of file object_file.hh.

Referenced by gem5::loader::ElfObject::determineArch(), and getArch().

◆ byteOrder

ByteOrder gem5::loader::ObjectFile::byteOrder = ByteOrder::little
protected

Definition at line 102 of file object_file.hh.

Referenced by gem5::loader::ElfObject::determineByteOrder(), and getByteOrder().

◆ entry

Addr gem5::loader::ObjectFile::entry = 0
protected

◆ opSys

OpSys gem5::loader::ObjectFile::opSys = UnknownOpSys
protected

Definition at line 101 of file object_file.hh.

Referenced by gem5::loader::ElfObject::determineOpSys(), and getOpSys().


The documentation for this class was generated from the following files:

Generated on Wed Dec 21 2022 10:24:15 for gem5 by doxygen 1.9.1