tlb.hh (11168:f98eb2da15a4) | tlb.hh (11175:2324ed5fa9f4) |
---|---|
1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 60 unchanged lines hidden (view full) --- 69 70 uint32_t configAddress; 71 72 public: 73 74 typedef X86TLBParams Params; 75 TLB(const Params *p); 76 | 1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 60 unchanged lines hidden (view full) --- 69 70 uint32_t configAddress; 71 72 public: 73 74 typedef X86TLBParams Params; 75 TLB(const Params *p); 76 |
77 void takeOverFrom(BaseTLB *otlb) {} | 77 void takeOverFrom(BaseTLB *otlb) override {} |
78 79 TlbEntry *lookup(Addr va, bool update_lru = true); 80 81 void setConfigAddress(uint32_t addr); 82 83 protected: 84 85 EntryList::iterator lookupIt(Addr va, bool update_lru = true); 86 87 Walker * walker; 88 89 public: 90 Walker *getWalker(); 91 | 78 79 TlbEntry *lookup(Addr va, bool update_lru = true); 80 81 void setConfigAddress(uint32_t addr); 82 83 protected: 84 85 EntryList::iterator lookupIt(Addr va, bool update_lru = true); 86 87 Walker * walker; 88 89 public: 90 Walker *getWalker(); 91 |
92 void flushAll(); | 92 void flushAll() override; |
93 94 void flushNonGlobal(); 95 | 93 94 void flushNonGlobal(); 95 |
96 void demapPage(Addr va, uint64_t asn); | 96 void demapPage(Addr va, uint64_t asn) override; |
97 98 protected: 99 uint32_t size; 100 101 std::vector<TlbEntry> tlb; 102 103 EntryList freeList; 104 --- 51 unchanged lines hidden (view full) --- 156 * migrating port connections during a CPU takeOverFrom() 157 * call. For architectures that do not have a table walker, 158 * NULL is returned, hence the use of a pointer rather than a 159 * reference. For X86 this method will always return a valid 160 * port pointer. 161 * 162 * @return A pointer to the walker master port 163 */ | 97 98 protected: 99 uint32_t size; 100 101 std::vector<TlbEntry> tlb; 102 103 EntryList freeList; 104 --- 51 unchanged lines hidden (view full) --- 156 * migrating port connections during a CPU takeOverFrom() 157 * call. For architectures that do not have a table walker, 158 * NULL is returned, hence the use of a pointer rather than a 159 * reference. For X86 this method will always return a valid 160 * port pointer. 161 * 162 * @return A pointer to the walker master port 163 */ |
164 virtual BaseMasterPort *getMasterPort(); | 164 BaseMasterPort *getMasterPort() override; |
165 }; 166} 167 168#endif // __ARCH_X86_TLB_HH__ | 165 }; 166} 167 168#endif // __ARCH_X86_TLB_HH__ |