diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-11-20 15:38:54 -0800 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-11-20 15:38:54 -0800 |
commit | e35c4f2f089ad25cf3081cea50b018717dd0b192 (patch) | |
tree | 48d39aff50851566811f1a2925eb59228e1f6af1 /src/arch/sparc/tlb.cc | |
parent | a12d5975cc8ea9462c731f58c0a950a8d3e44409 (diff) | |
parent | 088d7c70968a6ba43eddb4116c35a707747b7216 (diff) | |
download | gem5-e35c4f2f089ad25cf3081cea50b018717dd0b192.tar.xz |
Merge with head.
--HG--
extra : convert_revision : c4215e516c6d82ad466db898ffeefa0233ca110e
Diffstat (limited to 'src/arch/sparc/tlb.cc')
-rw-r--r-- | src/arch/sparc/tlb.cc | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/arch/sparc/tlb.cc b/src/arch/sparc/tlb.cc index b6880ff94..52791e12a 100644 --- a/src/arch/sparc/tlb.cc +++ b/src/arch/sparc/tlb.cc @@ -1363,11 +1363,6 @@ TLB::serialize(std::ostream &os) SERIALIZE_SCALAR(cntr); SERIALIZE_ARRAY(free_list, cntr); - for (int x = 0; x < size; x++) { - nameOut(os, csprintf("%s.PTE%d", name(), x)); - tlb[x].serialize(os); - } - SERIALIZE_SCALAR(c0_tsb_ps0); SERIALIZE_SCALAR(c0_tsb_ps1); SERIALIZE_SCALAR(c0_config); @@ -1376,6 +1371,11 @@ TLB::serialize(std::ostream &os) SERIALIZE_SCALAR(cx_config); SERIALIZE_SCALAR(sfsr); SERIALIZE_SCALAR(tag_access); + + for (int x = 0; x < size; x++) { + nameOut(os, csprintf("%s.PTE%d", name(), x)); + tlb[x].serialize(os); + } } void @@ -1398,14 +1398,6 @@ TLB::unserialize(Checkpoint *cp, const std::string §ion) for (int x = 0; x < cntr; x++) freeList.push_back(&tlb[free_list[x]]); - lookupTable.clear(); - for (int x = 0; x < size; x++) { - tlb[x].unserialize(cp, csprintf("%s.PTE%d", section, x)); - if (tlb[x].valid) - lookupTable.insert(tlb[x].range, &tlb[x]); - - } - UNSERIALIZE_SCALAR(c0_tsb_ps0); UNSERIALIZE_SCALAR(c0_tsb_ps1); UNSERIALIZE_SCALAR(c0_config); @@ -1414,6 +1406,14 @@ TLB::unserialize(Checkpoint *cp, const std::string §ion) UNSERIALIZE_SCALAR(cx_config); UNSERIALIZE_SCALAR(sfsr); UNSERIALIZE_SCALAR(tag_access); + + lookupTable.clear(); + for (int x = 0; x < size; x++) { + tlb[x].unserialize(cp, csprintf("%s.PTE%d", section, x)); + if (tlb[x].valid) + lookupTable.insert(tlb[x].range, &tlb[x]); + + } } void |