From: Khalique Date: Thu, 22 Feb 2018 19:19:40 +0000 (-0600) Subject: sparc: Fix FS Checkpoint loading X-Git-Tag: v19.0.0.0~2275 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e83f27eb31144439f832c79bb380e69e957d2949;p=gem5.git sparc: Fix FS Checkpoint loading Proposed changes to SPARC FS simulation, testing indicates that checkpoints are now loaded correctly with the following command: build/SPARC/gem5.opt configs/example/fs.py -r 1 Change-Id: Icd44f01a74c41a78828ef6fd7b661e584bdb6966 Reviewed-on: https://gem5-review.googlesource.com/8581 Reviewed-by: Gabe Black Maintainer: Gabe Black --- diff --git a/src/arch/sparc/isa.cc b/src/arch/sparc/isa.cc index b8906e95f..f6b941e2d 100644 --- a/src/arch/sparc/isa.cc +++ b/src/arch/sparc/isa.cc @@ -654,12 +654,12 @@ ISA::serialize(CheckpointOut &cp) const SERIALIZE_ARRAY(tstate,MaxTL); SERIALIZE_ARRAY(tt,MaxTL); SERIALIZE_SCALAR(tba); - SERIALIZE_SCALAR((uint16_t)pstate); + SERIALIZE_SCALAR(pstate); SERIALIZE_SCALAR(tl); SERIALIZE_SCALAR(pil); SERIALIZE_SCALAR(cwp); SERIALIZE_SCALAR(gl); - SERIALIZE_SCALAR((uint64_t)hpstate); + SERIALIZE_SCALAR(hpstate); SERIALIZE_ARRAY(htstate,MaxTL); SERIALIZE_SCALAR(hintp); SERIALIZE_SCALAR(htba); diff --git a/src/arch/sparc/tlb.cc b/src/arch/sparc/tlb.cc index 997bfe991..f4564c6fd 100644 --- a/src/arch/sparc/tlb.cc +++ b/src/arch/sparc/tlb.cc @@ -1367,12 +1367,12 @@ TLB::serialize(CheckpointOut &cp) const SERIALIZE_SCALAR(cx_config); SERIALIZE_SCALAR(sfsr); SERIALIZE_SCALAR(tag_access); + SERIALIZE_SCALAR(sfar); for (int x = 0; x < size; x++) { ScopedCheckpointSection sec(cp, csprintf("PTE%d", x)); tlb[x].serialize(cp); } - SERIALIZE_SCALAR(sfar); } void diff --git a/src/dev/sparc/mm_disk.cc b/src/dev/sparc/mm_disk.cc index a6ce1d09f..b3223e859 100644 --- a/src/dev/sparc/mm_disk.cc +++ b/src/dev/sparc/mm_disk.cc @@ -182,6 +182,7 @@ MmDisk::serialize(CheckpointOut &cp) const image->write(diskData, curSector); assert(bytes_read == SectorSize); } + ClockedObject::serialize(cp); } MmDisk *