faults.hh (2680:246e7104f744) faults.hh (2800:18a615ca6e19)
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;

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

78 public:
79 FaultName name() {return _name;}
80 TrapType trapType() {return _trapType;}
81 FaultPriority priority() {return _priority;}
82 FaultStat & countStat() {return _count;}
83 bool isAlignmentFault() {return true;}
84};
85
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;

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

78 public:
79 FaultName name() {return _name;}
80 TrapType trapType() {return _trapType;}
81 FaultPriority priority() {return _priority;}
82 FaultStat & countStat() {return _count;}
83 bool isAlignmentFault() {return true;}
84};
85
86#if !FULL_SYSTEM
87class PageTableFault : public SparcFault
88{
89 private:
90 Addr vaddr;
91 static FaultName _name;
92 static TrapType _trapType;
93 static FaultPriority _priority;
94 static FaultStat _count;
95 public:
96 PageTableFault(Addr va)
97 : vaddr(va) {}
98 FaultName name() {return _name;}
99 TrapType trapType() {return _trapType;}
100 FaultPriority priority() {return _priority;}
101 FaultStat & countStat() {return _count;}
102 void invoke(ThreadContext * tc);
103};
104
105static inline Fault genPageTableFault(Addr va)
106{
107 return new PageTableFault(va);
108}
109#endif
110
86static inline Fault genMachineCheckFault()
87{
88 return new InternalProcessorError;
89}
90
91static inline Fault genAlignmentFault()
92{
93 return new MemAddressNotAligned;

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

584 FaultName name() {return _name;}
585 FaultPriority priority() {return _priority;}
586 FaultStat & countStat() {return _count;}
587#if !FULL_SYSTEM
588 void invoke(ThreadContext * tc);
589#endif
590};
591
111static inline Fault genMachineCheckFault()
112{
113 return new InternalProcessorError;
114}
115
116static inline Fault genAlignmentFault()
117{
118 return new MemAddressNotAligned;

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

609 FaultName name() {return _name;}
610 FaultPriority priority() {return _priority;}
611 FaultStat & countStat() {return _count;}
612#if !FULL_SYSTEM
613 void invoke(ThreadContext * tc);
614#endif
615};
616
617
592} // SparcISA namespace
593
594#endif // __FAULTS_HH__
618} // SparcISA namespace
619
620#endif // __FAULTS_HH__