faults.hh (5004:7d94cedab264) | faults.hh (5568:d14250d688d2) |
---|---|
1/* 2 * Copyright (c) 2003-2005 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 120 unchanged lines hidden (view full) --- 129 FaultName name() const {return _name;} 130 FaultVect vect() {return _vect;} 131 FaultStat & countStat() {return _count;} 132}; 133 134class DtbFault : public AlphaFault 135{ 136 protected: | 1/* 2 * Copyright (c) 2003-2005 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 120 unchanged lines hidden (view full) --- 129 FaultName name() const {return _name;} 130 FaultVect vect() {return _vect;} 131 FaultStat & countStat() {return _count;} 132}; 133 134class DtbFault : public AlphaFault 135{ 136 protected: |
137 AlphaISA::VAddr vaddr; | 137 VAddr vaddr; |
138 uint32_t reqFlags; 139 uint64_t flags; 140 public: | 138 uint32_t reqFlags; 139 uint64_t flags; 140 public: |
141 DtbFault(AlphaISA::VAddr _vaddr, uint32_t _reqFlags, uint64_t _flags) | 141 DtbFault(VAddr _vaddr, uint32_t _reqFlags, uint64_t _flags) |
142 : vaddr(_vaddr), reqFlags(_reqFlags), flags(_flags) 143 { } 144 FaultName name() const = 0; 145 FaultVect vect() = 0; 146 FaultStat & countStat() = 0; 147#if FULL_SYSTEM 148 void invoke(ThreadContext * tc); 149#endif 150}; 151 152class NDtbMissFault : public DtbFault 153{ 154 private: 155 static FaultName _name; 156 static FaultVect _vect; 157 static FaultStat _count; 158 public: | 142 : vaddr(_vaddr), reqFlags(_reqFlags), flags(_flags) 143 { } 144 FaultName name() const = 0; 145 FaultVect vect() = 0; 146 FaultStat & countStat() = 0; 147#if FULL_SYSTEM 148 void invoke(ThreadContext * tc); 149#endif 150}; 151 152class NDtbMissFault : public DtbFault 153{ 154 private: 155 static FaultName _name; 156 static FaultVect _vect; 157 static FaultStat _count; 158 public: |
159 NDtbMissFault(AlphaISA::VAddr vaddr, uint32_t reqFlags, uint64_t flags) | 159 NDtbMissFault(VAddr vaddr, uint32_t reqFlags, uint64_t flags) |
160 : DtbFault(vaddr, reqFlags, flags) 161 { } 162 FaultName name() const {return _name;} 163 FaultVect vect() {return _vect;} 164 FaultStat & countStat() {return _count;} 165#if !FULL_SYSTEM 166 void invoke(ThreadContext * tc); 167#endif 168}; 169 170class PDtbMissFault : public DtbFault 171{ 172 private: 173 static FaultName _name; 174 static FaultVect _vect; 175 static FaultStat _count; 176 public: | 160 : DtbFault(vaddr, reqFlags, flags) 161 { } 162 FaultName name() const {return _name;} 163 FaultVect vect() {return _vect;} 164 FaultStat & countStat() {return _count;} 165#if !FULL_SYSTEM 166 void invoke(ThreadContext * tc); 167#endif 168}; 169 170class PDtbMissFault : public DtbFault 171{ 172 private: 173 static FaultName _name; 174 static FaultVect _vect; 175 static FaultStat _count; 176 public: |
177 PDtbMissFault(AlphaISA::VAddr vaddr, uint32_t reqFlags, uint64_t flags) | 177 PDtbMissFault(VAddr vaddr, uint32_t reqFlags, uint64_t flags) |
178 : DtbFault(vaddr, reqFlags, flags) 179 { } 180 FaultName name() const {return _name;} 181 FaultVect vect() {return _vect;} 182 FaultStat & countStat() {return _count;} 183}; 184 185class DtbPageFault : public DtbFault 186{ 187 private: 188 static FaultName _name; 189 static FaultVect _vect; 190 static FaultStat _count; 191 public: | 178 : DtbFault(vaddr, reqFlags, flags) 179 { } 180 FaultName name() const {return _name;} 181 FaultVect vect() {return _vect;} 182 FaultStat & countStat() {return _count;} 183}; 184 185class DtbPageFault : public DtbFault 186{ 187 private: 188 static FaultName _name; 189 static FaultVect _vect; 190 static FaultStat _count; 191 public: |
192 DtbPageFault(AlphaISA::VAddr vaddr, uint32_t reqFlags, uint64_t flags) | 192 DtbPageFault(VAddr vaddr, uint32_t reqFlags, uint64_t flags) |
193 : DtbFault(vaddr, reqFlags, flags) 194 { } 195 FaultName name() const {return _name;} 196 FaultVect vect() {return _vect;} 197 FaultStat & countStat() {return _count;} 198}; 199 200class DtbAcvFault : public DtbFault 201{ 202 private: 203 static FaultName _name; 204 static FaultVect _vect; 205 static FaultStat _count; 206 public: | 193 : DtbFault(vaddr, reqFlags, flags) 194 { } 195 FaultName name() const {return _name;} 196 FaultVect vect() {return _vect;} 197 FaultStat & countStat() {return _count;} 198}; 199 200class DtbAcvFault : public DtbFault 201{ 202 private: 203 static FaultName _name; 204 static FaultVect _vect; 205 static FaultStat _count; 206 public: |
207 DtbAcvFault(AlphaISA::VAddr vaddr, uint32_t reqFlags, uint64_t flags) | 207 DtbAcvFault(VAddr vaddr, uint32_t reqFlags, uint64_t flags) |
208 : DtbFault(vaddr, reqFlags, flags) 209 { } 210 FaultName name() const {return _name;} 211 FaultVect vect() {return _vect;} 212 FaultStat & countStat() {return _count;} 213}; 214 215class DtbAlignmentFault : public DtbFault 216{ 217 private: 218 static FaultName _name; 219 static FaultVect _vect; 220 static FaultStat _count; 221 public: | 208 : DtbFault(vaddr, reqFlags, flags) 209 { } 210 FaultName name() const {return _name;} 211 FaultVect vect() {return _vect;} 212 FaultStat & countStat() {return _count;} 213}; 214 215class DtbAlignmentFault : public DtbFault 216{ 217 private: 218 static FaultName _name; 219 static FaultVect _vect; 220 static FaultStat _count; 221 public: |
222 DtbAlignmentFault(AlphaISA::VAddr vaddr, uint32_t reqFlags, uint64_t flags) | 222 DtbAlignmentFault(VAddr vaddr, uint32_t reqFlags, uint64_t flags) |
223 : DtbFault(vaddr, reqFlags, flags) 224 { } 225 FaultName name() const {return _name;} 226 FaultVect vect() {return _vect;} 227 FaultStat & countStat() {return _count;} 228}; 229 230class ItbFault : public AlphaFault --- 101 unchanged lines hidden --- | 223 : DtbFault(vaddr, reqFlags, flags) 224 { } 225 FaultName name() const {return _name;} 226 FaultVect vect() {return _vect;} 227 FaultStat & countStat() {return _count;} 228}; 229 230class ItbFault : public AlphaFault --- 101 unchanged lines hidden --- |