diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2008-02-26 23:38:51 -0500 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2008-02-26 23:38:51 -0500 |
commit | 8b4796a367ec21d294f7318343e5bb9d7e07a53e (patch) | |
tree | 584199359a9a7aa3c7d842164b677d1a1e94a1f1 /src/arch/x86 | |
parent | 7bde0285e50e3903e38dd9e6fd59ea4a98f41079 (diff) | |
download | gem5-8b4796a367ec21d294f7318343e5bb9d7e07a53e.tar.xz |
TLB: Make a TLB base class and put a virtual demapPage function in it.
--HG--
extra : convert_revision : cc0e62a5a337fd5bf332ad33bed61c0d505a936f
Diffstat (limited to 'src/arch/x86')
-rw-r--r-- | src/arch/x86/tlb.cc | 4 | ||||
-rw-r--r-- | src/arch/x86/tlb.hh | 5 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/arch/x86/tlb.cc b/src/arch/x86/tlb.cc index acac3081a..208dec177 100644 --- a/src/arch/x86/tlb.cc +++ b/src/arch/x86/tlb.cc @@ -76,7 +76,7 @@ namespace X86ISA { -TLB::TLB(const Params *p) : SimObject(p), configAddress(0), size(p->size) +TLB::TLB(const Params *p) : BaseTLB(p), configAddress(0), size(p->size) { tlb = new TlbEntry[size]; std::memset(tlb, 0, sizeof(TlbEntry) * size); @@ -169,7 +169,7 @@ TLB::invalidateNonGlobal() } void -TLB::demapPage(Addr va) +TLB::demapPage(Addr va, uint64_t asn) { } diff --git a/src/arch/x86/tlb.hh b/src/arch/x86/tlb.hh index d08d6fa68..f6ccd5731 100644 --- a/src/arch/x86/tlb.hh +++ b/src/arch/x86/tlb.hh @@ -70,6 +70,7 @@ #include "params/X86DTB.hh" #include "params/X86ITB.hh" #include "sim/faults.hh" +#include "sim/tlb.hh" #include "sim/sim_object.hh" class ThreadContext; @@ -83,7 +84,7 @@ namespace X86ISA class TLB; - class TLB : public SimObject + class TLB : public BaseTLB { protected: friend class FakeITLBFault; @@ -120,7 +121,7 @@ namespace X86ISA void invalidateNonGlobal(); - void demapPage(Addr va); + void demapPage(Addr va, uint64_t asn); protected: int size; |