|
gem5
v21.1.0.2
|
#include <memory_image.hh>
Classes | |
| struct | Segment |
Public Member Functions | |
| MemoryImage () | |
| MemoryImage (const Segment &seg) | |
| MemoryImage (std::initializer_list< Segment > segs) | |
| const std::vector< Segment > & | segments () const |
| void | addSegment (const Segment &seg) |
| void | addSegments (std::initializer_list< Segment > segs) |
| bool | write (const PortProxy &proxy) const |
| MemoryImage & | move (std::function< Addr(Addr)> mapper) |
| MemoryImage & | offset (Addr by) |
| MemoryImage & | mask (Addr m) |
| Addr | maxAddr () const |
| Addr | minAddr () const |
| bool | contains (Addr addr) const |
Private Member Functions | |
| bool | writeSegment (const Segment &seg, const PortProxy &proxy) const |
Private Attributes | |
| std::vector< Segment > | _segments |
Definition at line 53 of file memory_image.hh.
|
inline |
Definition at line 87 of file memory_image.hh.
|
inline |
Definition at line 89 of file memory_image.hh.
References addSegment(), and gem5::X86ISA::seg.
|
inline |
Definition at line 94 of file memory_image.hh.
References addSegments().
|
inline |
Definition at line 111 of file memory_image.hh.
References _segments, and gem5::X86ISA::seg.
Referenced by addSegments(), gem5::loader::ElfObject::handleLoadableSegment(), and MemoryImage().
|
inline |
Definition at line 117 of file memory_image.hh.
References addSegment(), and gem5::X86ISA::seg.
Referenced by MemoryImage().
|
inline |
Definition at line 154 of file memory_image.hh.
References _segments, gem5::X86ISA::addr, and gem5::X86ISA::seg.
|
inline |
Definition at line 131 of file memory_image.hh.
References gem5::ArmISA::a, gem5::ArmISA::m, and move().
|
inline |
Definition at line 136 of file memory_image.hh.
References _segments, and gem5::X86ISA::seg.
Referenced by gem5::ArmProcess32::ArmProcess32(), gem5::ArmProcess64::ArmProcess64(), gem5::X86ISA::I386Process::I386Process(), gem5::memory::AbstractMemory::initState(), gem5::KernelWorkload::KernelWorkload(), gem5::MipsProcess::MipsProcess(), gem5::PowerProcess::PowerProcess(), gem5::RiscvProcess32::RiscvProcess32(), gem5::RiscvProcess64::RiscvProcess64(), gem5::Sparc32Process::Sparc32Process(), gem5::Sparc64Process::Sparc64Process(), and gem5::X86ISA::X86_64Process::X86_64Process().
|
inline |
Definition at line 145 of file memory_image.hh.
References _segments, gem5::MaxAddr, and gem5::X86ISA::seg.
Referenced by gem5::memory::AbstractMemory::initState(), and gem5::KernelWorkload::KernelWorkload().
| MemoryImage & gem5::loader::MemoryImage::move | ( | std::function< Addr(Addr)> | mapper | ) |
Definition at line 63 of file memory_image.cc.
References _segments, and gem5::X86ISA::seg.
Referenced by gem5::KernelWorkload::initState(), gem5::KernelWorkload::KernelWorkload(), mask(), and offset().
|
inline |
Definition at line 126 of file memory_image.hh.
References gem5::ArmISA::a, and move().
Referenced by gem5::KernelWorkload::initState(), gem5::memory::AbstractMemory::initState(), gem5::loader::MemoryImage::Segment::Segment(), and gem5::loader::ElfObject::updateBias().
|
inline |
Definition at line 105 of file memory_image.hh.
References _segments.
Referenced by gem5::loader::ElfObject::ElfObject().
| bool gem5::loader::MemoryImage::write | ( | const PortProxy & | proxy | ) | const |
Definition at line 54 of file memory_image.cc.
References _segments, gem5::X86ISA::seg, and writeSegment().
Referenced by gem5::PowerProcess::argsInit(), gem5::RiscvISA::BareMetal::initState(), gem5::Process::initState(), gem5::KernelWorkload::initState(), gem5::ArmISA::FsWorkload::initState(), and gem5::memory::AbstractMemory::initState().
|
private |
Definition at line 40 of file memory_image.cc.
References gem5::PortProxy::memsetBlob(), gem5::X86ISA::seg, and gem5::PortProxy::writeBlob().
Referenced by write().
|
private |
Definition at line 100 of file memory_image.hh.
Referenced by addSegment(), contains(), maxAddr(), minAddr(), move(), segments(), and write().