From e83f27eb31144439f832c79bb380e69e957d2949 Mon Sep 17 00:00:00 2001 From: Khalique Date: Thu, 22 Feb 2018 13:19:40 -0600 Subject: [PATCH] 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 --- src/arch/sparc/isa.cc | 4 ++-- src/arch/sparc/tlb.cc | 2 +- src/dev/sparc/mm_disk.cc | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) 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 * -- 2.30.2