gem5
v21.0.0.0
|
These methods related to the "Serialize" interface. More...
Classes | |
struct | ParseParam< T, Enable > |
Macros | |
#define | UNSERIALIZE_OPT_SCALAR(scalar) optParamIn(cp, #scalar, scalar) |
#define | SERIALIZE_ENUM(scalar) paramOut(cp, #scalar, (int)scalar) |
#define | UNSERIALIZE_ENUM(scalar) |
#define | SERIALIZE_ARRAY(member, size) arrayParamOut(cp, #member, member, size) |
#define | UNSERIALIZE_ARRAY(member, size) arrayParamIn(cp, #member, member, size) |
#define | SERIALIZE_CONTAINER(member) arrayParamOut(cp, #member, member) |
#define | UNSERIALIZE_CONTAINER(member) arrayParamIn(cp, #member, member) |
#define | SERIALIZE_EVENT(event) event.serializeSection(cp, #event); |
#define | UNSERIALIZE_EVENT(event) |
#define | SERIALIZE_OBJ(obj) obj.serializeSection(cp, #obj) |
#define | UNSERIALIZE_OBJ(obj) obj.unserializeSection(cp, #obj) |
#define | SERIALIZE_OBJPTR(objptr) paramOut(cp, #objptr, (objptr)->name()) |
#define | UNSERIALIZE_OBJPTR(objptr) |
Functions | |
static std::string | CheckpointIn::setDir (const std::string &base_name) |
Set the current directory. More... | |
static std::string | CheckpointIn::dir () |
Get the current checkout directory name. More... | |
Serializable::Serializable () | |
virtual void | Serializable::serialize (CheckpointOut &cp) const =0 |
Serialize an object. More... | |
virtual void | Serializable::unserialize (CheckpointIn &cp)=0 |
Unserialize an object. More... | |
void | Serializable::serializeSection (CheckpointOut &cp, const char *name) const |
Serialize an object into a new section. More... | |
void | Serializable::serializeSection (CheckpointOut &cp, const std::string &name) const |
void | Serializable::unserializeSection (CheckpointIn &cp, const char *name) |
Unserialize an a child object. More... | |
void | Serializable::unserializeSection (CheckpointIn &cp, const std::string &name) |
static const std::string & | Serializable::currentSection () |
Gets the fully-qualified name of the active section. More... | |
static void | Serializable::serializeAll (const std::string &cpt_dir) |
Serializes all the SimObjects. More... | |
static void | Serializable::unserializeGlobals (CheckpointIn &cp) |
template<class T > | |
void | paramOut (CheckpointOut &os, const std::string &name, const T ¶m) |
This function is used for writing parameters to a checkpoint. More... | |
template<class T > | |
bool | optParamIn (CheckpointIn &cp, const std::string &name, T ¶m, bool do_warn=true) |
This function is used for restoring optional parameters from the checkpoint. More... | |
template<class T > | |
void | paramIn (CheckpointIn &cp, const std::string &name, T ¶m) |
This function is used for restoring parameters from a checkpoint. More... | |
template<class InputIterator > | |
void | arrayParamOut (CheckpointOut &os, const std::string &name, InputIterator start, InputIterator end) |
template<class T > | |
void | arrayParamOut (CheckpointOut &os, const std::string &name, const T *param, unsigned size) |
template<class T , class InsertIterator > | |
void | arrayParamIn (CheckpointIn &cp, const std::string &name, InsertIterator inserter, ssize_t fixed_size=-1) |
Extract values stored in the checkpoint, and assign them to the provided array container. More... | |
template<class T > | |
decltype(std::declval< T >().insert(std::declval< typename T::value_type >()), void()) | arrayParamIn (CheckpointIn &cp, const std::string &name, T ¶m) |
template<class T > | |
void | arrayParamIn (CheckpointIn &cp, const std::string &name, T *param, unsigned size) |
void | objParamIn (CheckpointIn &cp, const std::string &name, SimObject *¶m) |
virtual void | SimObject::loadState (CheckpointIn &cp) |
loadState() is called on each SimObject when restoring from a checkpoint. More... | |
virtual void | SimObject::initState () |
initState() is called on each SimObject when not restoring from a checkpoint. More... | |
virtual SimObject * | SimObjectResolver::resolveSimObject (const std::string &name)=0 |
Find a SimObject given a full path name. More... | |
Variables | |
template<class T > | |
decltype(std::begin(std::declval< const T & >()), std::end(std::declval< const T & >()), void()) | arrayParamOut (CheckpointOut &os, const std::string &name, const T ¶m) |
const std::string | CheckpointIn::getCptDir () |
bool | CheckpointIn::find (const std::string §ion, const std::string &entry, std::string &value) |
bool | CheckpointIn::findObj (const std::string §ion, const std::string &entry, SimObject *&value) |
bool | CheckpointIn::entryExists (const std::string §ion, const std::string &entry) |
bool | CheckpointIn::sectionExists (const std::string §ion) |
void | CheckpointIn::visitSection (const std::string §ion, IniFile::VisitSectionCallback cb) |
template<class CP > | |
Serializable::ScopedCheckpointSection::ScopedCheckpointSection (CP &cp, const char *name) | |
This is the constructor for Scoped checkpoint section helper class. More... | |
template<class CP > | |
Serializable::ScopedCheckpointSection::ScopedCheckpointSection (CP &cp, const std::string &name) | |
These methods related to the "Serialize" interface.
#define SERIALIZE_ARRAY | ( | member, | |
size | |||
) | arrayParamOut(cp, #member, member, size) |
Definition at line 626 of file serialize.hh.
#define SERIALIZE_CONTAINER | ( | member | ) | arrayParamOut(cp, #member, member) |
Definition at line 642 of file serialize.hh.
#define SERIALIZE_ENUM | ( | scalar | ) | paramOut(cp, #scalar, (int)scalar) |
Definition at line 607 of file serialize.hh.
#define SERIALIZE_EVENT | ( | event | ) | event.serializeSection(cp, #event); |
Definition at line 658 of file serialize.hh.
#define SERIALIZE_OBJ | ( | obj | ) | obj.serializeSection(cp, #obj) |
Definition at line 676 of file serialize.hh.
Definition at line 690 of file serialize.hh.
#define UNSERIALIZE_ARRAY | ( | member, | |
size | |||
) | arrayParamIn(cp, #member, member, size) |
Definition at line 634 of file serialize.hh.
#define UNSERIALIZE_CONTAINER | ( | member | ) | arrayParamIn(cp, #member, member) |
Definition at line 650 of file serialize.hh.
#define UNSERIALIZE_ENUM | ( | scalar | ) |
Definition at line 614 of file serialize.hh.
#define UNSERIALIZE_EVENT | ( | event | ) |
Definition at line 665 of file serialize.hh.
#define UNSERIALIZE_OBJ | ( | obj | ) | obj.unserializeSection(cp, #obj) |
Definition at line 683 of file serialize.hh.
#define UNSERIALIZE_OBJPTR | ( | objptr | ) |
Definition at line 697 of file serialize.hh.
#define UNSERIALIZE_OPT_SCALAR | ( | scalar | ) | optParamIn(cp, #scalar, scalar) |
Definition at line 598 of file serialize.hh.
void arrayParamIn | ( | CheckpointIn & | cp, |
const std::string & | name, | ||
InsertIterator | inserter, | ||
ssize_t | fixed_size = -1 |
||
) |
Extract values stored in the checkpoint, and assign them to the provided array container.
cp | The checkpoint to be parsed. |
name | Name of the container. |
param | The array container. |
size | The expected number of entries to be extracted. |
Definition at line 447 of file serialize.hh.
References Serializable::currentSection(), fatal_if, name(), SCMI::token, and tokenize().
decltype(std::declval<T>().insert(std::declval<typename T::value_type>()), void()) arrayParamIn | ( | CheckpointIn & | cp, |
const std::string & | name, | ||
T & | param | ||
) |
Definition at line 476 of file serialize.hh.
References name().
void arrayParamIn | ( | CheckpointIn & | cp, |
const std::string & | name, | ||
T * | param, | ||
unsigned | size | ||
) |
Definition at line 500 of file serialize.hh.
References data, name(), and Stats::operator*().
void arrayParamOut | ( | CheckpointOut & | os, |
const std::string & | name, | ||
const T * | param, | ||
unsigned | size | ||
) |
Definition at line 427 of file serialize.hh.
References arrayParamOut, name(), and X86ISA::os.
void arrayParamOut | ( | CheckpointOut & | os, |
const std::string & | name, | ||
InputIterator | start, | ||
InputIterator | end | ||
) |
Definition at line 394 of file serialize.hh.
References name(), X86ISA::os, and ShowParam< T, Enabled >::show().
|
static |
Gets the fully-qualified name of the active section.
Definition at line 238 of file serialize.cc.
References Serializable::path.
Referenced by arrayParamIn(), ArmSemihosting::FileBase::create(), mappingParamIn(), Serializable::ScopedCheckpointSection::nameOut(), objParamIn(), optParamIn(), paramIn(), paramInImpl(), Globals::unserialize(), HDLcd::unserialize(), and GicV2::unserialize().
|
static |
Get the current checkout directory name.
This function exports the current checkout point directory name so other objects can derive filenames from it (e.g., memory). The return value is guaranteed to end in '/' so filenames can be directly appended. This function is only valid while a checkpoint is being created.
Definition at line 262 of file serialize.cc.
Referenced by CowDiskImage::serialize(), PhysicalMemory::serializeStore(), and RubySystem::writeCompressedTrace().
bool CheckpointIn::entryExists | ( | const std::string & | section, |
const std::string & | entry | ||
) |
section | Here we mention the section we are looking for (example: currentsection). |
entry | Mention the entry we are looking for (example: interrupt time) in the section. |
Definition at line 291 of file serialize.cc.
References CheckpointIn::db, and IniFile::entryExists().
bool CheckpointIn::find | ( | const std::string & | section, |
const std::string & | entry, | ||
std::string & | value | ||
) |
section | Here we mention the section we are looking for (example: currentsection). |
entry | Mention the entry we are looking for (example: Cache line size etc) in the section. |
value | Give the value at the said entry. |
Definition at line 306 of file serialize.cc.
References CheckpointIn::db, and IniFile::find().
bool CheckpointIn::findObj | ( | const std::string & | section, |
const std::string & | entry, | ||
SimObject *& | value | ||
) |
section | Here we mention the section we are looking for (example: currentsection). |
entry | Mention the SimObject we are looking for (example: interruput time) in the section. |
value | Give the value at the said entry. |
Definition at line 322 of file serialize.cc.
References CheckpointIn::db, IniFile::find(), CheckpointIn::objNameResolver, and SimObjectResolver::resolveSimObject().
|
inline |
Definition at line 88 of file serialize.hh.
References CheckpointIn::_cptDir.
Referenced by CheckpointIn::CheckpointIn().
|
virtual |
initState() is called on each SimObject when not restoring from a checkpoint.
This provides a hook for state initializations that are only required for a "cold start".
Reimplemented in AbstractMemory, X86ISA::I386Process, ArmISA::FsWorkload, TrafficGen, X86ISA::X86_64Process, ArmISA::FsLinux, Sparc64Process, KernelWorkload, ArmProcess64, ArmProcess32, X86ISA::FsWorkload, Process, RiscvProcess32, ArmLinuxProcess64, ArmISA::FsFreebsd, Sparc32Process, FastModel::CortexA76, RiscvProcess64, ArmLinuxProcess32, X86ISA::FsLinux, SparcProcess, RiscvISA::BareMetal, SparcISA::FsWorkload, PowerProcess, and MipsProcess.
Definition at line 88 of file sim_object.cc.
Referenced by SparcISA::FsWorkload::initState(), RiscvISA::BareMetal::initState(), TrafficGen::initState(), AbstractMemory::initState(), and CxxConfigManager::initState().
|
virtual |
loadState() is called on each SimObject when restoring from a checkpoint.
The default implementation simply calls unserialize() if there is a corresponding section in the checkpoint. However, objects can override loadState() to get other behaviors, e.g., doing other programmed initializations after unserialize(), or complaining if no checkpoint section is found.
cp | Checkpoint to restore the state from. |
Definition at line 75 of file sim_object.cc.
References DPRINTF, SimObject::name(), and Serializable::unserializeSection().
void objParamIn | ( | CheckpointIn & | cp, |
const std::string & | name, | ||
SimObject *& | param | ||
) |
Definition at line 348 of file serialize.cc.
References Serializable::currentSection(), fatal, and name().
bool optParamIn | ( | CheckpointIn & | cp, |
const std::string & | name, | ||
T & | param, | ||
bool | do_warn = true |
||
) |
This function is used for restoring optional parameters from the checkpoint.
cp | The checkpoint to be read from. |
name | Name of the parameter to be read. |
param | Value of the parameter to be read. |
do_warn | If the warn is set to true then the function prints the warning message. |
Definition at line 363 of file serialize.hh.
References Serializable::currentSection(), name(), paramInImpl(), and warn_if.
Referenced by mappingParamIn(), EthPacketData::unserialize(), Random::unserialize(), EtherLink::Link::unserialize(), Ticked::unserialize(), Loader::SymbolTable::unserialize(), and System::unserialize().
void paramIn | ( | CheckpointIn & | cp, |
const std::string & | name, | ||
T & | param | ||
) |
This function is used for restoring parameters from a checkpoint.
os | The checkpoint to be restored from. |
name | Name of the parameter to be set. |
param | Value of the parameter to be restored. |
Definition at line 383 of file serialize.hh.
References Serializable::currentSection(), fatal_if, name(), and paramInImpl().
void paramOut | ( | CheckpointOut & | os, |
const std::string & | name, | ||
const T & | param | ||
) |
This function is used for writing parameters to a checkpoint.
os | The checkpoint to be written to. |
name | Name of the parameter to be set. |
param | Value of the parameter to be written. |
Definition at line 333 of file serialize.hh.
References name(), X86ISA::os, and ShowParam< T, Enabled >::show().
Referenced by mappingParamOut().
|
pure virtual |
Find a SimObject given a full path name.
Implemented in CxxConfigManager::SimObjectResolver, and PybindSimObjectResolver.
Referenced by CheckpointIn::findObj().
|
inline |
This is the constructor for Scoped checkpoint section helper class.
Scoped checkpoint helper class creates a section within a checkpoint without the need for a separate serializeable object. It is mainly used within the Serializable class when serializing or unserializing section (see serializeSection() and unserializeSection()). It can also be used to maintain backwards compatibility in existing code that serializes structs that are not inheriting from Serializable into subsections.
When the class is instantiated, it appends a name to the active path in a checkpoint. The old path is later restored when the instance is destroyed. For example, serializeSection() could be implemented by instantiating a ScopedCheckpointSection and then calling serialize() on an object.
Definition at line 203 of file serialize.hh.
References name(), Serializable::ScopedCheckpointSection::nameOut(), and Serializable::ScopedCheckpointSection::pushName().
|
inline |
Definition at line 209 of file serialize.hh.
References name(), Serializable::ScopedCheckpointSection::nameOut(), and Serializable::ScopedCheckpointSection::pushName().
bool CheckpointIn::sectionExists | ( | const std::string & | section | ) |
Definition at line 335 of file serialize.cc.
References CheckpointIn::db, and IniFile::sectionExists().
Serializable::Serializable | ( | ) |
Definition at line 161 of file serialize.cc.
|
pure virtual |
Serialize an object.
Output an object's state into the current checkpoint section.
cp | Checkpoint state |
Implemented in DistIface::Sync, BaseCache, ArmISA::ISA, iGbReg::Regs, VirtIODeviceBase, DistIface, System, Event, IGbE, GicV2, IGbE::TxDescCache, GenericISA::DelaySlotUPCState< MachInst >, DistIface::RecvScheduler, ArmISA::PMU::CounterState, GenericTimerFrame, BaseCPU, HDLcd::DmaEngine, ArmSemihosting::File, PciDevice, DmaReadFifo, ArmSemihosting::FileFeatures, GenericISA::DelaySlotPCState< MachInst >, Pl111, IdeDisk, GenericTimer::CoreTimers, IGbE::RxDescCache, DistIface::RecvScheduler::Desc, NSGigE, Gicv3CPUInterface, SimObject, BasePixelPump::PixelEvent, VirtQueue, ArmISA::TlbEntry, GenericTimer, Sinic::Device, IGbE::DescCache< T >, IGbE::DescCache< iGbReg::TxDesc >, IGbE::DescCache< iGbReg::RxDesc >, ArmSemihosting::FileBase, ArmISA::Interrupts, GenericISA::UPCState< MachInst >, DistIface::SyncSwitch, X86ISA::Interrupts, MultiLevelPageTable< EntryTypes >, Gicv3Distributor, BaseTrafficGen, ArchTimer, PhysicalMemory, SparcISA::Interrupts, ArmSemihosting, ClockedObject, DistIface::SyncNode, SrcClockDomain, Uart8250, DistEtherLink, Gicv3Redistributor, VirtIO9PProxy, DeviceFDEntry, ArmInterruptPin, RealViewOsc, GicV2::BankedRegs, VGic, CopyEngineReg::ChanRegs, SMMUv3, CpuLocalTimer, X86ISA::GpuTLB, EtherSwitch, MemState, IdeController, SparcISA::TLB, PipeFDEntry, RealViewCtrl, UFSHostDevice, DVFSHandler, TickedObject, CheckerCPU, BasePixelPump, CopyEngine, SparcISA::ISA, EmulationPageTable, Sp804, PowerISA::TLB, Gicv3Its, X86ISA::TLB, SimpleThread, SystemCounter, CpuLocalTimer::Timer, EtherLink, I2CBus, MinorCPU, Root, Clint, X86ISA::I8042, Ticked, EtherTapStub, Iob, FileFDEntry, Pl050, CowDiskImage, Plic, EnergyCtrl, TrafficGen, Sp804::Timer, GenericISA::PCStateBase, MaltaCChip, CopyEngineReg::Regs, VoltageDomain, Malta, MaltaIO, PL031, Gicv3, X86ISA::I8259, X86ISA::I8254, Random, X86ISA::TlbEntry, X86ISA::ISA, CopyEngine::CopyEngineChannel, X86ISA::I82094AA, RiscvISA::TlbEntry, RiscvISA::TLB, ArmISA::PMU, KernelWorkload, X86ISA::I8237, RiscvISA::ISA, DistEtherLink::Link, MipsISA::Interrupts, X86ISA::Cmos, HDLcd, MipsISA::TLB, LocalSimLoopExitEvent, RubySystem, Globals, FrameBuffer, RiscvRTC, PowerState, PollEvent, Sinic::Base, Process, GPUDispatcher, HiFive, X86ISA::Speaker, PS2Mouse, FlashDevice, DisplayTimings, EtherTapBase, PS2TouchKit, PS2Keyboard, Pl011, NoMaliGpu, GenericWatchdog, DumbTOD, Sp805, PS2Device, MmDisk, ThreadState, Iris::Interrupts, X86ISA::PCState, EtherSwitch::Interface::PortFifo, RiscvISA::Interrupts, EtherSwitch::Interface::PortFifoEntry, EtherSwitch::Interface, FDEntry, and Iris::ISA.
Referenced by Serializable::serializeSection().
|
static |
Serializes all the SimObjects.
Definition at line 184 of file serialize.cc.
References CheckpointIn::baseFilename, fatal, globals, SimObject::serializeAll(), Serializable::serializeSection(), CheckpointIn::setDir(), and ArmISA::t.
Referenced by debug_serialize(), and pybind_init_core().
void Serializable::serializeSection | ( | CheckpointOut & | cp, |
const char * | name | ||
) | const |
Serialize an object into a new section.
This method creates a new section in a checkpoint and calls serialize() to serialize the current object into that section. The name of the section is appended to the current checkpoint path.
cp | Checkpoint state |
name | Name to append to the active path |
Definition at line 170 of file serialize.cc.
References name(), and Serializable::serialize().
Referenced by ArmISA::PMU::serialize(), Gicv3::serialize(), Sp804::serialize(), CopyEngine::serialize(), CpuLocalTimer::serialize(), VGic::serialize(), DistEtherLink::serialize(), GenericTimer::serialize(), GenericTimerFrame::serialize(), IGbE::serialize(), System::serialize(), DistIface::serialize(), VirtIODeviceBase::serialize(), Serializable::serializeAll(), SimObject::serializeAll(), and Serializable::serializeSection().
|
inline |
Definition at line 276 of file serialize.hh.
References name(), and Serializable::serializeSection().
|
static |
Set the current directory.
This function takes care of inserting curTick() if there's a 'd' in the argument, and appends a '/' if necessary. The final name is returned.
Definition at line 250 of file serialize.cc.
References csprintf(), curTick(), and name().
Referenced by Serializable::serializeAll().
|
pure virtual |
Unserialize an object.
Read an object's state from the current checkpoint section.
cp | Checkpoint state |
Implemented in DistIface::Sync, BaseCache, ArmISA::ISA, iGbReg::Regs, VirtIODeviceBase, DistIface, System, Event, IGbE, GicV2, GenericISA::DelaySlotUPCState< MachInst >, IGbE::TxDescCache, DistIface::RecvScheduler, ArmISA::PMU::CounterState, BaseCPU, GenericTimerFrame, HDLcd::DmaEngine, PciDevice, ArmSemihosting::File, GenericISA::DelaySlotPCState< MachInst >, DmaReadFifo, ArmSemihosting::FileFeatures, Pl111, IdeDisk, GenericTimer::CoreTimers, IGbE::RxDescCache, DistIface::RecvScheduler::Desc, NSGigE, ArmISA::TlbEntry, Gicv3CPUInterface, SimObject, BasePixelPump::PixelEvent, VirtQueue, ArmISA::Interrupts, GenericTimer, Sinic::Device, GenericISA::UPCState< MachInst >, IGbE::DescCache< T >, IGbE::DescCache< iGbReg::TxDesc >, IGbE::DescCache< iGbReg::RxDesc >, ArmSemihosting::FileBase, MultiLevelPageTable< EntryTypes >, DistIface::SyncSwitch, X86ISA::Interrupts, PhysicalMemory, Gicv3Distributor, BaseTrafficGen, ArchTimer, SparcISA::Interrupts, ArmSemihosting, ClockedObject, DistIface::SyncNode, SrcClockDomain, Uart8250, DistEtherLink, Gicv3Redistributor, VirtIO9PProxy, DeviceFDEntry, ArmInterruptPin, CopyEngineReg::ChanRegs, RealViewOsc, MemState, GicV2::BankedRegs, VGic, SMMUv3, CpuLocalTimer, X86ISA::GpuTLB, EtherSwitch, IdeController, SparcISA::TLB, PipeFDEntry, RealViewCtrl, UFSHostDevice, DVFSHandler, TickedObject, CheckerCPU, BasePixelPump, CopyEngine, SparcISA::ISA, EmulationPageTable, Sp804, PowerISA::TLB, Gicv3Its, X86ISA::TLB, SimpleThread, SystemCounter, CpuLocalTimer::Timer, EtherLink, I2CBus, MinorCPU, Clint, X86ISA::I8042, Ticked, EtherTapStub, Iob, FileFDEntry, GenericISA::PCStateBase, Pl050, CowDiskImage, CopyEngineReg::Regs, Plic, EnergyCtrl, TrafficGen, Sp804::Timer, MaltaCChip, VoltageDomain, Malta, MaltaIO, PL031, Gicv3, X86ISA::I8259, X86ISA::I8254, Random, X86ISA::TlbEntry, X86ISA::ISA, CopyEngine::CopyEngineChannel, X86ISA::I82094AA, RiscvISA::TlbEntry, RiscvISA::TLB, ArmISA::PMU, KernelWorkload, MipsISA::Interrupts, X86ISA::I8237, RiscvISA::ISA, DistEtherLink::Link, X86ISA::Cmos, HDLcd, MipsISA::TLB, LocalSimLoopExitEvent, RubySystem, Globals, FrameBuffer, RiscvRTC, PowerState, PollEvent, Sinic::Base, Process, HiFive, GPUDispatcher, X86ISA::Speaker, PS2Mouse, FlashDevice, DisplayTimings, EtherTapBase, PS2TouchKit, PS2Keyboard, Pl011, NoMaliGpu, GenericWatchdog, DumbTOD, Sp805, PS2Device, ThreadState, Iris::Interrupts, X86ISA::PCState, RiscvISA::Interrupts, EtherSwitch::Interface::PortFifo, EtherSwitch::Interface::PortFifoEntry, EtherSwitch::Interface, and FDEntry.
Referenced by Serializable::unserializeSection().
|
static |
Definition at line 203 of file serialize.cc.
References globals, ArmISA::i, mainEventQueue, numMainEventQueues, Globals::unserializedCurTick, and Serializable::unserializeSection().
Referenced by pybind_init_core().
void Serializable::unserializeSection | ( | CheckpointIn & | cp, |
const char * | name | ||
) |
Unserialize an a child object.
This method loads a child object from a checkpoint. The object name is appended to the active path to form a fully qualified section name and unserialize() is called.
cp | Checkpoint state |
name | Name to append to the active path |
Definition at line 177 of file serialize.cc.
References name(), and Serializable::unserialize().
Referenced by SimObject::loadState(), ArmISA::PMU::unserialize(), RiscvISA::TLB::unserialize(), Gicv3::unserialize(), X86ISA::TLB::unserialize(), Sp804::unserialize(), EtherSwitch::Interface::PortFifo::unserialize(), CopyEngine::unserialize(), CpuLocalTimer::unserialize(), DistEtherLink::unserialize(), GenericTimer::unserialize(), GenericTimerFrame::unserialize(), DistIface::RecvScheduler::unserialize(), IGbE::unserialize(), System::unserialize(), DistIface::unserialize(), VirtIODeviceBase::unserialize(), Serializable::unserializeGlobals(), and Serializable::unserializeSection().
|
inline |
Definition at line 297 of file serialize.hh.
References name(), and Serializable::unserializeSection().
void CheckpointIn::visitSection | ( | const std::string & | section, |
IniFile::VisitSectionCallback | cb | ||
) |
Definition at line 341 of file serialize.cc.
References CheckpointIn::db, and IniFile::visitSection().
decltype(std::begin(std::declval<const T&>()), std::end(std::declval<const T&>()), void()) arrayParamOut(CheckpointOut &os, const std::string &name, const T ¶m) |
Definition at line 415 of file serialize.hh.
Referenced by arrayParamOut(), PS2Device::serialize(), EthPacketData::serialize(), CopyEngine::CopyEngineChannel::serialize(), Plic::serialize(), MC146818::serialize(), IGbE::DescCache< iGbReg::RxDesc >::serialize(), and serialize().