gem5
v21.0.0.0
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
c
d
e
f
g
h
i
m
n
o
p
r
s
t
u
v
w
x
Enumerations
a
c
d
e
f
i
l
m
o
p
r
s
t
v
x
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
y
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
w
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
:
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Functions
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Variables
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Enumerations
_
a
b
c
d
e
f
g
h
i
l
m
o
p
q
r
s
t
v
Enumerator
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Macros
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
arch
mips
registers.hh
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2006 The Regents of The University of Michigan
3
* Copyright (c) 2007 MIPS Technologies, Inc.
4
* All rights reserved.
5
*
6
* Redistribution and use in source and binary forms, with or without
7
* modification, are permitted provided that the following conditions are
8
* met: redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer;
10
* redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution;
13
* neither the name of the copyright holders nor the names of its
14
* contributors may be used to endorse or promote products derived from
15
* this software without specific prior written permission.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
*/
29
30
#ifndef __ARCH_MIPS_REGISTERS_HH__
31
#define __ARCH_MIPS_REGISTERS_HH__
32
33
#include "
arch/generic/vec_pred_reg.hh
"
34
#include "
arch/generic/vec_reg.hh
"
35
#include "
base/logging.hh
"
36
#include "
base/types.hh
"
37
38
class
ThreadContext
;
39
40
namespace
MipsISA
41
{
42
43
// Constants Related to the number of registers
44
const
int
NumIntArchRegs
= 32;
45
const
int
NumIntSpecialRegs
= 9;
46
const
int
NumFloatArchRegs
= 32;
47
const
int
NumFloatSpecialRegs
= 5;
48
49
const
int
MaxShadowRegSets
= 16;
// Maximum number of shadow register sets
50
const
int
NumIntRegs
=
NumIntArchRegs
+
NumIntSpecialRegs
;
//HI & LO Regs
51
const
int
NumFloatRegs
=
NumFloatArchRegs
+
NumFloatSpecialRegs
;
//
52
const
int
NumVecRegs
= 1;
// Not applicable to MIPS
53
// (1 to prevent warnings)
54
const
int
NumVecPredRegs
= 1;
// Not applicable to MIPS
55
// (1 to prevent warnings)
56
const
int
NumCCRegs
= 0;
57
58
const
uint32_t
MIPS32_QNAN
= 0x7fbfffff;
59
const
uint64_t
MIPS64_QNAN
=
ULL
(0x7ff7ffffffffffff);
60
61
enum
FPControlRegNums
{
62
FLOATREG_FIR
=
NumFloatArchRegs
,
63
FLOATREG_FCCR
,
64
FLOATREG_FEXR
,
65
FLOATREG_FENR
,
66
FLOATREG_FCSR
67
};
68
69
enum
FCSRBits
{
70
Inexact
= 1,
71
Underflow
,
72
Overflow
,
73
DivideByZero
,
74
Invalid
,
75
Unimplemented
76
};
77
78
enum
FCSRFields
{
79
Flag_Field
= 1,
80
Enable_Field
= 6,
81
Cause_Field
= 11
82
};
83
84
enum
MiscIntRegNums
{
85
INTREG_LO
=
NumIntArchRegs
,
86
INTREG_DSP_LO0
=
INTREG_LO
,
87
INTREG_HI
,
88
INTREG_DSP_HI0
=
INTREG_HI
,
89
INTREG_DSP_ACX0
,
90
INTREG_DSP_LO1
,
91
INTREG_DSP_HI1
,
92
INTREG_DSP_ACX1
,
93
INTREG_DSP_LO2
,
94
INTREG_DSP_HI2
,
95
INTREG_DSP_ACX2
,
96
INTREG_DSP_LO3
,
97
INTREG_DSP_HI3
,
98
INTREG_DSP_ACX3
,
99
INTREG_DSP_CONTROL
100
};
101
102
// semantically meaningful register indices
103
const
int
ZeroReg
= 0;
104
const
int
SyscallSuccessReg
= 7;
105
const
int
FirstArgumentReg
= 4;
106
const
int
ReturnValueReg
= 2;
107
108
const
int
StackPointerReg
= 29;
109
110
const
int
SyscallPseudoReturnReg
= 3;
111
112
// Enumerate names for 'Control' Registers in the CPU
113
// Reference MIPS32 Arch. for Programmers, Vol. III, Ch.8
114
// (Register Number-Register Select) Summary of Register
115
//------------------------------------------------------
116
// The first set of names classify the CP0 names as Register Banks
117
// for easy indexing when using the 'RD + SEL' index combination
118
// in CP0 instructions.
119
enum
MiscRegIndex
{
120
MISCREG_INDEX
= 0,
//Bank 0: 0 - 3
121
MISCREG_MVP_CONTROL
,
122
MISCREG_MVP_CONF0
,
123
MISCREG_MVP_CONF1
,
124
125
MISCREG_CP0_RANDOM
= 8,
//Bank 1: 8 - 15
126
MISCREG_VPE_CONTROL
,
127
MISCREG_VPE_CONF0
,
128
MISCREG_VPE_CONF1
,
129
MISCREG_YQMASK
,
130
MISCREG_VPE_SCHEDULE
,
131
MISCREG_VPE_SCHEFBACK
,
132
MISCREG_VPE_OPT
,
133
134
MISCREG_ENTRYLO0
= 16,
//Bank 2: 16 - 23
135
MISCREG_TC_STATUS
,
136
MISCREG_TC_BIND
,
137
MISCREG_TC_RESTART
,
138
MISCREG_TC_HALT
,
139
MISCREG_TC_CONTEXT
,
140
MISCREG_TC_SCHEDULE
,
141
MISCREG_TC_SCHEFBACK
,
142
143
MISCREG_ENTRYLO1
= 24,
// Bank 3: 24
144
145
MISCREG_CONTEXT
= 32,
// Bank 4: 32 - 33
146
MISCREG_CONTEXT_CONFIG
,
147
148
MISCREG_PAGEMASK
= 40,
//Bank 5: 40 - 41
149
MISCREG_PAGEGRAIN
= 41,
150
151
MISCREG_WIRED
= 48,
//Bank 6:48-55
152
MISCREG_SRS_CONF0
,
153
MISCREG_SRS_CONF1
,
154
MISCREG_SRS_CONF2
,
155
MISCREG_SRS_CONF3
,
156
MISCREG_SRS_CONF4
,
157
158
MISCREG_HWRENA
= 56,
//Bank 7: 56-63
159
160
MISCREG_BADVADDR
= 64,
//Bank 8: 64-71
161
162
MISCREG_COUNT
= 72,
//Bank 9: 72-79
163
164
MISCREG_ENTRYHI
= 80,
//Bank 10: 80-87
165
166
MISCREG_COMPARE
= 88,
//Bank 11: 88-95
167
168
MISCREG_STATUS
= 96,
//Bank 12: 96-103
169
MISCREG_INTCTL
,
170
MISCREG_SRSCTL
,
171
MISCREG_SRSMAP
,
172
173
MISCREG_CAUSE
= 104,
//Bank 13: 104-111
174
175
MISCREG_EPC
= 112,
//Bank 14: 112-119
176
177
MISCREG_PRID
= 120,
//Bank 15: 120-127,
178
MISCREG_EBASE
,
179
180
MISCREG_CONFIG
= 128,
//Bank 16: 128-135
181
MISCREG_CONFIG1
,
182
MISCREG_CONFIG2
,
183
MISCREG_CONFIG3
,
184
MISCREG_CONFIG4
,
185
MISCREG_CONFIG5
,
186
MISCREG_CONFIG6
,
187
MISCREG_CONFIG7
,
188
189
190
MISCREG_LLADDR
= 136,
//Bank 17: 136-143
191
192
MISCREG_WATCHLO0
= 144,
//Bank 18: 144-151
193
MISCREG_WATCHLO1
,
194
MISCREG_WATCHLO2
,
195
MISCREG_WATCHLO3
,
196
MISCREG_WATCHLO4
,
197
MISCREG_WATCHLO5
,
198
MISCREG_WATCHLO6
,
199
MISCREG_WATCHLO7
,
200
201
MISCREG_WATCHHI0
= 152,
//Bank 19: 152-159
202
MISCREG_WATCHHI1
,
203
MISCREG_WATCHHI2
,
204
MISCREG_WATCHHI3
,
205
MISCREG_WATCHHI4
,
206
MISCREG_WATCHHI5
,
207
MISCREG_WATCHHI6
,
208
MISCREG_WATCHHI7
,
209
210
MISCREG_XCCONTEXT64
= 160,
//Bank 20: 160-167
211
212
//Bank 21: 168-175
213
214
//Bank 22: 176-183
215
216
MISCREG_DEBUG
= 184,
//Bank 23: 184-191
217
MISCREG_TRACE_CONTROL1
,
218
MISCREG_TRACE_CONTROL2
,
219
MISCREG_USER_TRACE_DATA
,
220
MISCREG_TRACE_BPC
,
221
222
MISCREG_DEPC
= 192,
//Bank 24: 192-199
223
224
MISCREG_PERFCNT0
= 200,
//Bank 25: 200-207
225
MISCREG_PERFCNT1
,
226
MISCREG_PERFCNT2
,
227
MISCREG_PERFCNT3
,
228
MISCREG_PERFCNT4
,
229
MISCREG_PERFCNT5
,
230
MISCREG_PERFCNT6
,
231
MISCREG_PERFCNT7
,
232
233
MISCREG_ERRCTL
= 208,
//Bank 26: 208-215
234
235
MISCREG_CACHEERR0
= 216,
//Bank 27: 216-223
236
MISCREG_CACHEERR1
,
237
MISCREG_CACHEERR2
,
238
MISCREG_CACHEERR3
,
239
240
MISCREG_TAGLO0
= 224,
//Bank 28: 224-231
241
MISCREG_DATALO1
,
242
MISCREG_TAGLO2
,
243
MISCREG_DATALO3
,
244
MISCREG_TAGLO4
,
245
MISCREG_DATALO5
,
246
MISCREG_TAGLO6
,
247
MISCREG_DATALO7
,
248
249
MISCREG_TAGHI0
= 232,
//Bank 29: 232-239
250
MISCREG_DATAHI1
,
251
MISCREG_TAGHI2
,
252
MISCREG_DATAHI3
,
253
MISCREG_TAGHI4
,
254
MISCREG_DATAHI5
,
255
MISCREG_TAGHI6
,
256
MISCREG_DATAHI7
,
257
258
259
MISCREG_ERROR_EPC
= 240,
//Bank 30: 240-247
260
261
MISCREG_DESAVE
= 248,
//Bank 31: 248-256
262
263
MISCREG_LLFLAG
= 257,
264
MISCREG_TP_VALUE
,
265
266
MISCREG_NUMREGS
267
};
268
269
const
int
NumMiscRegs
=
MISCREG_NUMREGS
;
270
271
// Not applicable to MIPS
272
using
VecElem
=
::DummyVecElem
;
273
using
VecReg
=
::DummyVecReg
;
274
using
ConstVecReg
=
::DummyConstVecReg
;
275
using
VecRegContainer
=
::DummyVecRegContainer
;
276
constexpr
unsigned
NumVecElemPerVecReg
=
::DummyNumVecElemPerVecReg
;
277
constexpr
size_t
VecRegSizeBytes
=
::DummyVecRegSizeBytes
;
278
279
// Not applicable to MIPS
280
using
VecPredReg
=
::DummyVecPredReg
;
281
using
ConstVecPredReg
=
::DummyConstVecPredReg
;
282
using
VecPredRegContainer
=
::DummyVecPredRegContainer
;
283
constexpr
size_t
VecPredRegSizeBits
=
::DummyVecPredRegSizeBits
;
284
constexpr
bool
VecPredRegHasPackedRepr
=
::DummyVecPredRegHasPackedRepr
;
285
286
}
// namespace MipsISA
287
288
#endif
MipsISA::MISCREG_WATCHHI0
@ MISCREG_WATCHHI0
Definition:
registers.hh:201
MipsISA::SyscallPseudoReturnReg
const int SyscallPseudoReturnReg
Definition:
registers.hh:110
MipsISA::MISCREG_SRS_CONF2
@ MISCREG_SRS_CONF2
Definition:
registers.hh:154
MipsISA::MISCREG_HWRENA
@ MISCREG_HWRENA
Definition:
registers.hh:158
MipsISA::MISCREG_WATCHLO3
@ MISCREG_WATCHLO3
Definition:
registers.hh:195
DummyVecRegSizeBytes
constexpr size_t DummyVecRegSizeBytes
Definition:
vec_reg.hh:669
MipsISA::MISCREG_TAGHI2
@ MISCREG_TAGHI2
Definition:
registers.hh:251
MipsISA::MISCREG_DATALO1
@ MISCREG_DATALO1
Definition:
registers.hh:241
MipsISA::MISCREG_VPE_OPT
@ MISCREG_VPE_OPT
Definition:
registers.hh:132
MipsISA::VecPredRegSizeBits
constexpr size_t VecPredRegSizeBits
Definition:
registers.hh:283
MipsISA::MISCREG_VPE_CONTROL
@ MISCREG_VPE_CONTROL
Definition:
registers.hh:126
MipsISA::VecPredRegHasPackedRepr
constexpr bool VecPredRegHasPackedRepr
Definition:
registers.hh:284
DummyVecPredRegSizeBits
constexpr size_t DummyVecPredRegSizeBits
Definition:
vec_pred_reg.hh:398
VecPredRegContainer
Generic predicate register container.
Definition:
vec_pred_reg.hh:47
MipsISA::MISCREG_TC_CONTEXT
@ MISCREG_TC_CONTEXT
Definition:
registers.hh:139
MipsISA::INTREG_DSP_CONTROL
@ INTREG_DSP_CONTROL
Definition:
registers.hh:99
MipsISA::FLOATREG_FIR
@ FLOATREG_FIR
Definition:
registers.hh:62
MipsISA::NumFloatSpecialRegs
const int NumFloatSpecialRegs
Definition:
registers.hh:47
MipsISA::MISCREG_VPE_SCHEFBACK
@ MISCREG_VPE_SCHEFBACK
Definition:
registers.hh:131
MipsISA::MISCREG_DATAHI1
@ MISCREG_DATAHI1
Definition:
registers.hh:250
MipsISA::MISCREG_CONFIG6
@ MISCREG_CONFIG6
Definition:
registers.hh:186
MipsISA::NumIntRegs
const int NumIntRegs
Definition:
registers.hh:50
MipsISA::ReturnValueReg
const int ReturnValueReg
Definition:
registers.hh:106
MipsISA::MISCREG_TAGHI4
@ MISCREG_TAGHI4
Definition:
registers.hh:253
MipsISA::MISCREG_WATCHHI5
@ MISCREG_WATCHHI5
Definition:
registers.hh:206
MipsISA::MISCREG_CONTEXT
@ MISCREG_CONTEXT
Definition:
registers.hh:145
MipsISA::MISCREG_PERFCNT1
@ MISCREG_PERFCNT1
Definition:
registers.hh:225
DummyVecPredRegHasPackedRepr
constexpr bool DummyVecPredRegHasPackedRepr
Dummy type aliases and constants for architectures that do not implement vector predicate registers.
Definition:
vec_pred_reg.hh:391
MipsISA::INTREG_DSP_LO2
@ INTREG_DSP_LO2
Definition:
registers.hh:93
MipsISA::NumCCRegs
const int NumCCRegs
Definition:
registers.hh:56
MipsISA::MISCREG_DATAHI5
@ MISCREG_DATAHI5
Definition:
registers.hh:254
MipsISA::Enable_Field
@ Enable_Field
Definition:
registers.hh:80
MipsISA::Unimplemented
@ Unimplemented
Definition:
registers.hh:75
MipsISA::INTREG_LO
@ INTREG_LO
Definition:
registers.hh:85
MipsISA::INTREG_DSP_HI3
@ INTREG_DSP_HI3
Definition:
registers.hh:97
MipsISA::MISCREG_PERFCNT2
@ MISCREG_PERFCNT2
Definition:
registers.hh:226
MipsISA::MISCREG_DEPC
@ MISCREG_DEPC
Definition:
registers.hh:222
MipsISA::MISCREG_MVP_CONTROL
@ MISCREG_MVP_CONTROL
Definition:
registers.hh:121
MipsISA::MISCREG_CACHEERR2
@ MISCREG_CACHEERR2
Definition:
registers.hh:237
MipsISA::MISCREG_INTCTL
@ MISCREG_INTCTL
Definition:
registers.hh:169
MipsISA::MISCREG_WATCHLO7
@ MISCREG_WATCHLO7
Definition:
registers.hh:199
MipsISA::MISCREG_ENTRYLO0
@ MISCREG_ENTRYLO0
Definition:
registers.hh:134
MipsISA::VecRegSizeBytes
constexpr size_t VecRegSizeBytes
Definition:
registers.hh:277
MipsISA::MISCREG_CAUSE
@ MISCREG_CAUSE
Definition:
registers.hh:173
MipsISA::MISCREG_USER_TRACE_DATA
@ MISCREG_USER_TRACE_DATA
Definition:
registers.hh:219
MipsISA::MIPS32_QNAN
const uint32_t MIPS32_QNAN
Definition:
registers.hh:58
MipsISA::FLOATREG_FCSR
@ FLOATREG_FCSR
Definition:
registers.hh:66
MipsISA::MISCREG_PERFCNT5
@ MISCREG_PERFCNT5
Definition:
registers.hh:229
MipsISA::Cause_Field
@ Cause_Field
Definition:
registers.hh:81
MipsISA::MISCREG_CP0_RANDOM
@ MISCREG_CP0_RANDOM
Definition:
registers.hh:125
MipsISA::MISCREG_DATAHI7
@ MISCREG_DATAHI7
Definition:
registers.hh:256
MipsISA::MISCREG_TC_BIND
@ MISCREG_TC_BIND
Definition:
registers.hh:136
MipsISA::MISCREG_WATCHHI1
@ MISCREG_WATCHHI1
Definition:
registers.hh:202
MipsISA::NumIntArchRegs
const int NumIntArchRegs
Definition:
registers.hh:44
MipsISA::NumIntSpecialRegs
const int NumIntSpecialRegs
Definition:
registers.hh:45
MipsISA::Underflow
@ Underflow
Definition:
registers.hh:71
MipsISA::MISCREG_TAGHI6
@ MISCREG_TAGHI6
Definition:
registers.hh:255
MipsISA::INTREG_DSP_ACX1
@ INTREG_DSP_ACX1
Definition:
registers.hh:92
DummyVecPredReg
VecPredRegT< DummyVecElem, DummyNumVecElemPerVecReg, DummyVecPredRegHasPackedRepr, false > DummyVecPredReg
Definition:
vec_pred_reg.hh:393
MipsISA::MISCREG_WATCHHI3
@ MISCREG_WATCHHI3
Definition:
registers.hh:204
MipsISA
Definition:
decoder.cc:31
MipsISA::INTREG_DSP_LO1
@ INTREG_DSP_LO1
Definition:
registers.hh:90
MipsISA::DivideByZero
@ DivideByZero
Definition:
registers.hh:73
MipsISA::NumFloatArchRegs
const int NumFloatArchRegs
Definition:
registers.hh:46
MipsISA::Inexact
@ Inexact
Definition:
registers.hh:70
MipsISA::MISCREG_CONFIG7
@ MISCREG_CONFIG7
Definition:
registers.hh:187
MipsISA::MISCREG_TRACE_BPC
@ MISCREG_TRACE_BPC
Definition:
registers.hh:220
MipsISA::MISCREG_PAGEMASK
@ MISCREG_PAGEMASK
Definition:
registers.hh:148
MipsISA::MISCREG_CONFIG4
@ MISCREG_CONFIG4
Definition:
registers.hh:184
MipsISA::MISCREG_DATALO5
@ MISCREG_DATALO5
Definition:
registers.hh:245
MipsISA::MISCREG_STATUS
@ MISCREG_STATUS
Definition:
registers.hh:168
MipsISA::MISCREG_TAGLO2
@ MISCREG_TAGLO2
Definition:
registers.hh:242
MipsISA::MISCREG_CONFIG1
@ MISCREG_CONFIG1
Definition:
registers.hh:181
MipsISA::MISCREG_CONFIG5
@ MISCREG_CONFIG5
Definition:
registers.hh:185
MipsISA::MISCREG_DATALO7
@ MISCREG_DATALO7
Definition:
registers.hh:247
MipsISA::MiscRegIndex
MiscRegIndex
Definition:
registers.hh:119
DummyVecRegContainer
DummyVecReg::Container DummyVecRegContainer
Definition:
vec_reg.hh:668
MipsISA::INTREG_DSP_ACX0
@ INTREG_DSP_ACX0
Definition:
registers.hh:89
MipsISA::MISCREG_LLFLAG
@ MISCREG_LLFLAG
Definition:
registers.hh:263
MipsISA::MISCREG_WATCHLO5
@ MISCREG_WATCHLO5
Definition:
registers.hh:197
ThreadContext
ThreadContext is the external interface to all thread state for anything outside of the CPU.
Definition:
thread_context.hh:88
MipsISA::FLOATREG_FEXR
@ FLOATREG_FEXR
Definition:
registers.hh:64
MipsISA::MISCREG_TC_SCHEDULE
@ MISCREG_TC_SCHEDULE
Definition:
registers.hh:140
MipsISA::MISCREG_MVP_CONF0
@ MISCREG_MVP_CONF0
Definition:
registers.hh:122
MipsISA::MISCREG_PERFCNT0
@ MISCREG_PERFCNT0
Definition:
registers.hh:224
MipsISA::MISCREG_WATCHHI2
@ MISCREG_WATCHHI2
Definition:
registers.hh:203
MipsISA::MISCREG_PERFCNT6
@ MISCREG_PERFCNT6
Definition:
registers.hh:230
MipsISA::MISCREG_YQMASK
@ MISCREG_YQMASK
Definition:
registers.hh:129
MipsISA::MISCREG_TAGHI0
@ MISCREG_TAGHI0
Definition:
registers.hh:249
MipsISA::INTREG_DSP_HI0
@ INTREG_DSP_HI0
Definition:
registers.hh:88
MipsISA::MISCREG_EBASE
@ MISCREG_EBASE
Definition:
registers.hh:178
MipsISA::MISCREG_SRS_CONF4
@ MISCREG_SRS_CONF4
Definition:
registers.hh:156
MipsISA::MISCREG_PERFCNT4
@ MISCREG_PERFCNT4
Definition:
registers.hh:228
MipsISA::FCSRFields
FCSRFields
Definition:
registers.hh:78
VecPredRegT
Predicate register view.
Definition:
vec_pred_reg.hh:66
MipsISA::Overflow
@ Overflow
Definition:
registers.hh:72
MipsISA::MISCREG_DESAVE
@ MISCREG_DESAVE
Definition:
registers.hh:261
MipsISA::SyscallSuccessReg
const int SyscallSuccessReg
Definition:
registers.hh:104
MipsISA::MISCREG_MVP_CONF1
@ MISCREG_MVP_CONF1
Definition:
registers.hh:123
DummyConstVecReg
VecRegT< DummyVecElem, DummyNumVecElemPerVecReg, true > DummyConstVecReg
Definition:
vec_reg.hh:667
MipsISA::MISCREG_LLADDR
@ MISCREG_LLADDR
Definition:
registers.hh:190
MipsISA::MISCREG_ENTRYHI
@ MISCREG_ENTRYHI
Definition:
registers.hh:164
MipsISA::MISCREG_WATCHLO6
@ MISCREG_WATCHLO6
Definition:
registers.hh:198
MipsISA::MISCREG_WATCHLO2
@ MISCREG_WATCHLO2
Definition:
registers.hh:194
MipsISA::MISCREG_SRS_CONF1
@ MISCREG_SRS_CONF1
Definition:
registers.hh:153
MipsISA::MISCREG_COMPARE
@ MISCREG_COMPARE
Definition:
registers.hh:166
MipsISA::MISCREG_DATALO3
@ MISCREG_DATALO3
Definition:
registers.hh:243
MipsISA::MISCREG_ERROR_EPC
@ MISCREG_ERROR_EPC
Definition:
registers.hh:259
DummyVecElem
uint32_t DummyVecElem
Dummy type aliases and constants for architectures that do not implement vector registers.
Definition:
vec_reg.hh:664
MipsISA::MISCREG_SRS_CONF0
@ MISCREG_SRS_CONF0
Definition:
registers.hh:152
vec_pred_reg.hh
MipsISA::MISCREG_SRSMAP
@ MISCREG_SRSMAP
Definition:
registers.hh:171
MipsISA::MISCREG_WATCHLO4
@ MISCREG_WATCHLO4
Definition:
registers.hh:196
DummyVecReg
VecRegT< DummyVecElem, DummyNumVecElemPerVecReg, false > DummyVecReg
Definition:
vec_reg.hh:666
MipsISA::MISCREG_CONFIG
@ MISCREG_CONFIG
Definition:
registers.hh:180
DummyVecPredRegContainer
DummyVecPredReg::Container DummyVecPredRegContainer
Definition:
vec_pred_reg.hh:397
MipsISA::MISCREG_VPE_SCHEDULE
@ MISCREG_VPE_SCHEDULE
Definition:
registers.hh:130
MipsISA::NumFloatRegs
const int NumFloatRegs
Definition:
registers.hh:51
MipsISA::MISCREG_TRACE_CONTROL2
@ MISCREG_TRACE_CONTROL2
Definition:
registers.hh:218
MipsISA::StackPointerReg
const int StackPointerReg
Definition:
registers.hh:108
MipsISA::MISCREG_CONFIG3
@ MISCREG_CONFIG3
Definition:
registers.hh:183
MipsISA::MISCREG_PERFCNT7
@ MISCREG_PERFCNT7
Definition:
registers.hh:231
MipsISA::FirstArgumentReg
const int FirstArgumentReg
Definition:
registers.hh:105
MipsISA::FPControlRegNums
FPControlRegNums
Definition:
registers.hh:61
MipsISA::INTREG_DSP_ACX2
@ INTREG_DSP_ACX2
Definition:
registers.hh:95
MipsISA::MiscIntRegNums
MiscIntRegNums
Definition:
registers.hh:84
vec_reg.hh
MipsISA::Invalid
@ Invalid
Definition:
registers.hh:74
MipsISA::MISCREG_WATCHHI4
@ MISCREG_WATCHHI4
Definition:
registers.hh:205
MipsISA::MISCREG_CACHEERR0
@ MISCREG_CACHEERR0
Definition:
registers.hh:235
MipsISA::NumVecRegs
const int NumVecRegs
Definition:
registers.hh:52
MipsISA::INTREG_DSP_LO0
@ INTREG_DSP_LO0
Definition:
registers.hh:86
MipsISA::MISCREG_CACHEERR1
@ MISCREG_CACHEERR1
Definition:
registers.hh:236
MipsISA::MISCREG_PAGEGRAIN
@ MISCREG_PAGEGRAIN
Definition:
registers.hh:149
MipsISA::MaxShadowRegSets
const int MaxShadowRegSets
Definition:
registers.hh:49
MipsISA::NumMiscRegs
const int NumMiscRegs
Definition:
registers.hh:269
MipsISA::MISCREG_WIRED
@ MISCREG_WIRED
Definition:
registers.hh:151
MipsISA::NumVecPredRegs
const int NumVecPredRegs
Definition:
registers.hh:54
MipsISA::MISCREG_TRACE_CONTROL1
@ MISCREG_TRACE_CONTROL1
Definition:
registers.hh:217
DummyConstVecPredReg
VecPredRegT< DummyVecElem, DummyNumVecElemPerVecReg, DummyVecPredRegHasPackedRepr, true > DummyConstVecPredReg
Definition:
vec_pred_reg.hh:396
MipsISA::MISCREG_ENTRYLO1
@ MISCREG_ENTRYLO1
Definition:
registers.hh:143
MipsISA::MISCREG_WATCHHI7
@ MISCREG_WATCHHI7
Definition:
registers.hh:208
MipsISA::MISCREG_EPC
@ MISCREG_EPC
Definition:
registers.hh:175
types.hh
MipsISA::MISCREG_VPE_CONF0
@ MISCREG_VPE_CONF0
Definition:
registers.hh:127
MipsISA::FCSRBits
FCSRBits
Definition:
registers.hh:69
MipsISA::MISCREG_SRS_CONF3
@ MISCREG_SRS_CONF3
Definition:
registers.hh:155
DummyNumVecElemPerVecReg
constexpr unsigned DummyNumVecElemPerVecReg
Definition:
vec_reg.hh:665
MipsISA::MISCREG_TAGLO4
@ MISCREG_TAGLO4
Definition:
registers.hh:244
MipsISA::MISCREG_WATCHHI6
@ MISCREG_WATCHHI6
Definition:
registers.hh:207
MipsISA::INTREG_DSP_ACX3
@ INTREG_DSP_ACX3
Definition:
registers.hh:98
MipsISA::ZeroReg
const int ZeroReg
Definition:
registers.hh:103
MipsISA::MISCREG_XCCONTEXT64
@ MISCREG_XCCONTEXT64
Definition:
registers.hh:210
MipsISA::NumVecElemPerVecReg
constexpr unsigned NumVecElemPerVecReg
Definition:
registers.hh:276
MipsISA::INTREG_DSP_HI2
@ INTREG_DSP_HI2
Definition:
registers.hh:94
logging.hh
MipsISA::MISCREG_COUNT
@ MISCREG_COUNT
Definition:
registers.hh:162
MipsISA::MISCREG_VPE_CONF1
@ MISCREG_VPE_CONF1
Definition:
registers.hh:128
MipsISA::FLOATREG_FCCR
@ FLOATREG_FCCR
Definition:
registers.hh:63
MipsISA::MISCREG_CONFIG2
@ MISCREG_CONFIG2
Definition:
registers.hh:182
MipsISA::MISCREG_CONTEXT_CONFIG
@ MISCREG_CONTEXT_CONFIG
Definition:
registers.hh:146
MipsISA::MISCREG_PERFCNT3
@ MISCREG_PERFCNT3
Definition:
registers.hh:227
MipsISA::MISCREG_WATCHLO0
@ MISCREG_WATCHLO0
Definition:
registers.hh:192
MipsISA::MISCREG_PRID
@ MISCREG_PRID
Definition:
registers.hh:177
MipsISA::MISCREG_DATAHI3
@ MISCREG_DATAHI3
Definition:
registers.hh:252
MipsISA::INTREG_HI
@ INTREG_HI
Definition:
registers.hh:87
MipsISA::MISCREG_SRSCTL
@ MISCREG_SRSCTL
Definition:
registers.hh:170
MipsISA::MISCREG_TC_STATUS
@ MISCREG_TC_STATUS
Definition:
registers.hh:135
MipsISA::MISCREG_TAGLO6
@ MISCREG_TAGLO6
Definition:
registers.hh:246
MipsISA::MISCREG_DEBUG
@ MISCREG_DEBUG
Definition:
registers.hh:216
MipsISA::INTREG_DSP_HI1
@ INTREG_DSP_HI1
Definition:
registers.hh:91
MipsISA::MISCREG_TC_SCHEFBACK
@ MISCREG_TC_SCHEFBACK
Definition:
registers.hh:141
MipsISA::MISCREG_ERRCTL
@ MISCREG_ERRCTL
Definition:
registers.hh:233
MipsISA::MISCREG_NUMREGS
@ MISCREG_NUMREGS
Definition:
registers.hh:266
MipsISA::MISCREG_TAGLO0
@ MISCREG_TAGLO0
Definition:
registers.hh:240
MipsISA::Flag_Field
@ Flag_Field
Definition:
registers.hh:79
MipsISA::MISCREG_BADVADDR
@ MISCREG_BADVADDR
Definition:
registers.hh:160
MipsISA::MIPS64_QNAN
const uint64_t MIPS64_QNAN
Definition:
registers.hh:59
ULL
#define ULL(N)
uint64_t constant
Definition:
types.hh:46
MipsISA::MISCREG_TC_RESTART
@ MISCREG_TC_RESTART
Definition:
registers.hh:137
MipsISA::MISCREG_TC_HALT
@ MISCREG_TC_HALT
Definition:
registers.hh:138
MipsISA::MISCREG_INDEX
@ MISCREG_INDEX
Definition:
registers.hh:120
VecRegContainer
Vector Register Abstraction This generic class is the model in a particularization of MVC,...
Definition:
vec_reg.hh:156
MipsISA::VecElem
::DummyVecElem VecElem
Definition:
registers.hh:272
VecRegT
Vector Register Abstraction This generic class is a view in a particularization of MVC,...
Definition:
vec_reg.hh:170
MipsISA::INTREG_DSP_LO3
@ INTREG_DSP_LO3
Definition:
registers.hh:96
MipsISA::MISCREG_WATCHLO1
@ MISCREG_WATCHLO1
Definition:
registers.hh:193
MipsISA::FLOATREG_FENR
@ FLOATREG_FENR
Definition:
registers.hh:65
MipsISA::MISCREG_TP_VALUE
@ MISCREG_TP_VALUE
Definition:
registers.hh:264
MipsISA::MISCREG_CACHEERR3
@ MISCREG_CACHEERR3
Definition:
registers.hh:238
Generated on Tue Mar 23 2021 19:41:20 for gem5 by
doxygen
1.8.17