Deleted Added
sdiff udiff text old ( 7404:bfc74724914e ) new ( 7406:ddc26bd4ea7d )
full compact
1/*
2 * Copyright (c) 2010 ARM Limited
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

--- 73 unchanged lines hidden (view full) ---

82 };
83 protected:
84 typedef std::multimap<Addr, int> PageTable;
85 PageTable lookupTable; // Quick lookup into page table
86
87 TlbEntry *table; // the Page Table
88 int size; // TLB Size
89 int nlu; // not last used entry (for replacement)
90
91#if FULL_SYSTEM
92 TableWalker *tableWalker;
93#endif
94
95 void nextnlu() { if (++nlu >= size) nlu = 0; }
96 TlbEntry *lookup(Addr vpn, uint8_t asn);
97
98 // Access Stats
99 mutable Stats::Scalar read_hits;
100 mutable Stats::Scalar read_misses;
101 mutable Stats::Scalar read_acv;

--- 32 unchanged lines hidden (view full) ---

134 void flushAsid(uint64_t asn);
135
136 /** Remove all entries that match the va regardless of asn
137 * @param mva address to flush from cache
138 */
139 void flushMva(Addr mva);
140
141 Fault trickBoxCheck(RequestPtr req, Mode mode, uint8_t domain, bool sNp);
142 Fault walkTrickBoxCheck(Addr pa, Addr va, Addr sz, bool is_exec,
143 bool is_write, uint8_t domain, bool sNp);
144
145 void printTlb();
146
147 void demapPage(Addr vaddr, uint64_t asn)
148 {
149 flushMvaAsid(vaddr, asn);
150 }
151

--- 23 unchanged lines hidden ---