1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * Redistribution and use of this software in source and binary forms, 6 * with or without modification, are permitted provided that the 7 * following conditions are met: 8 * --- 73 unchanged lines hidden (view full) --- 82 83 static const unsigned StoreCheck = 1 << NUM_SEGMENTREGS; 84 85 class TLB; 86 87 class TLB : public BaseTLB 88 { 89 protected: |
90 friend class Walker; |
91 92 typedef std::list<TlbEntry *> EntryList; 93 94 bool _allowNX; 95 uint32_t configAddress; 96 97 public: 98 bool allowNX() const --- 13 unchanged lines hidden (view full) --- 112 protected: 113 114 EntryList::iterator lookupIt(Addr va, bool update_lru = true); 115 116#if FULL_SYSTEM 117 protected: 118 119 Walker * walker; |
120#endif 121 122 public: 123 void invalidateAll(); 124 125 void invalidateNonGlobal(); 126 127 void demapPage(Addr va, uint64_t asn); 128 129 protected: 130 int size; 131 132 TlbEntry * tlb; 133 134 EntryList freeList; 135 EntryList entryList; 136 |
137 Fault translate(RequestPtr req, ThreadContext *tc, 138 Translation *translation, bool write, bool execute, 139 bool &delayedResponse, bool timing); |
140 141 public: 142 |
143 TlbEntry * insert(Addr vpn, TlbEntry &entry); |
144 145 // Checkpointing 146 virtual void serialize(std::ostream &os); 147 virtual void unserialize(Checkpoint *cp, const std::string §ion); 148 }; 149 150 class ITB : public TLB 151 { --- 37 unchanged lines hidden --- |