tlb.hh (5358:e9acb84bbafb) tlb.hh (5360:02a3af203516)
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 *

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

85 class TLB;
86
87 class TLB : public BaseTLB
88 {
89 protected:
90 friend class FakeITLBFault;
91 friend class FakeDTLBFault;
92
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 *

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

85 class TLB;
86
87 class TLB : public BaseTLB
88 {
89 protected:
90 friend class FakeITLBFault;
91 friend class FakeDTLBFault;
92
93 typedef std::list<TlbEntry *> EntryList;
94
93 bool _allowNX;
94 uint32_t configAddress;
95
96 public:
97 bool allowNX() const
98 {
99 return _allowNX;
100 }
101
102 typedef X86TLBParams Params;
103 TLB(const Params *p);
104
105 void dumpAll();
106
107 TlbEntry *lookup(Addr va, bool update_lru = true);
108
109 void setConfigAddress(uint32_t addr);
110
95 bool _allowNX;
96 uint32_t configAddress;
97
98 public:
99 bool allowNX() const
100 {
101 return _allowNX;
102 }
103
104 typedef X86TLBParams Params;
105 TLB(const Params *p);
106
107 void dumpAll();
108
109 TlbEntry *lookup(Addr va, bool update_lru = true);
110
111 void setConfigAddress(uint32_t addr);
112
113 protected:
114
115 EntryList::iterator lookupIt(Addr va, bool update_lru = true);
116
111#if FULL_SYSTEM
112 protected:
113
114 Walker * walker;
115
116 void walk(ThreadContext * _tc, Addr vaddr);
117#endif
118

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

123
124 void demapPage(Addr va, uint64_t asn);
125
126 protected:
127 int size;
128
129 TlbEntry * tlb;
130
117#if FULL_SYSTEM
118 protected:
119
120 Walker * walker;
121
122 void walk(ThreadContext * _tc, Addr vaddr);
123#endif
124

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

129
130 void demapPage(Addr va, uint64_t asn);
131
132 protected:
133 int size;
134
135 TlbEntry * tlb;
136
131 typedef std::list<TlbEntry *> EntryList;
132 EntryList freeList;
133 EntryList entryList;
134
135 template<class TlbFault>
136 Fault translate(RequestPtr &req, ThreadContext *tc,
137 bool write, bool execute);
138
139 public:

--- 43 unchanged lines hidden ---
137 EntryList freeList;
138 EntryList entryList;
139
140 template<class TlbFault>
141 Fault translate(RequestPtr &req, ThreadContext *tc,
142 bool write, bool execute);
143
144 public:

--- 43 unchanged lines hidden ---