summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/arch/mips/tlb.cc11
-rw-r--r--src/arch/mips/tlb.hh18
-rw-r--r--src/arch/mips/types.hh3
3 files changed, 25 insertions, 7 deletions
diff --git a/src/arch/mips/tlb.cc b/src/arch/mips/tlb.cc
index dab63c82f..71111b843 100644
--- a/src/arch/mips/tlb.cc
+++ b/src/arch/mips/tlb.cc
@@ -35,6 +35,17 @@
#include "params/MipsITB.hh"
namespace MipsISA {
+ void
+ TlbEntry::serialize(std::ostream &os)
+ {
+ SERIALIZE_SCALAR(pageStart);
+ }
+
+ void
+ TlbEntry::unserialize(Checkpoint *cp, const std::string &section)
+ {
+ UNSERIALIZE_SCALAR(pageStart);
+ }
};
MipsISA::ITB *
diff --git a/src/arch/mips/tlb.hh b/src/arch/mips/tlb.hh
index 416857776..6025de4c0 100644
--- a/src/arch/mips/tlb.hh
+++ b/src/arch/mips/tlb.hh
@@ -35,17 +35,27 @@
namespace MipsISA
{
- class ITB : public GenericITB
+ struct TlbEntry
+ {
+ Addr pageStart;
+ TlbEntry() {}
+ TlbEntry(Addr paddr) : pageStart(paddr) {}
+
+ void serialize(std::ostream &os);
+ void unserialize(Checkpoint *cp, const std::string &section);
+ };
+
+ class ITB : public GenericITB<>
{
public:
- ITB(const std::string &name) : GenericITB(name)
+ ITB(const std::string &name) : GenericITB<>(name)
{}
};
- class DTB : public GenericDTB
+ class DTB : public GenericDTB<>
{
public:
- DTB(const std::string &name) : GenericDTB(name)
+ DTB(const std::string &name) : GenericDTB<>(name)
{}
};
};
diff --git a/src/arch/mips/types.hh b/src/arch/mips/types.hh
index 6e14a9b55..9d2c6285d 100644
--- a/src/arch/mips/types.hh
+++ b/src/arch/mips/types.hh
@@ -31,7 +31,6 @@
#ifndef __ARCH_MIPS_TYPES_HH__
#define __ARCH_MIPS_TYPES_HH__
-#include "mem/types.hh"
#include "sim/host.hh"
namespace MipsISA
@@ -96,8 +95,6 @@ namespace MipsISA
RND_NEAREST
};
- typedef ::PageTable<> PageTable;
-
} // namespace MipsISA
#endif