Armadillo
0.1.1
TheexpandableOS
Main Page
+
Data Structures
Data Structures
Data Structure Index
+
Files
File List
+
Globals
+
All
a
c
d
e
f
g
h
i
l
m
n
p
q
r
s
+
Functions
d
e
f
g
h
i
l
m
n
p
q
r
s
Typedefs
Enumerations
Macros
•
All
Data Structures
Files
Functions
Typedefs
Enumerations
Macros
Pages
src
include
mips
registers.h
Go to the documentation of this file.
1
6
#ifndef __REGISTERS_H__
7
#define __REGISTERS_H__
8
9
#define ZERO $0 // Constant zero
10
11
#define AT $1 // Assembler temp
12
13
#define V0 $2 // Function return 0
14
#define V1 $3 // Function return 1
15
16
#define A0 $4 // Function argument 0
17
#define A1 $5 // Function argument 1
18
#define A2 $6 // Function argument 2
19
#define A3 $7 // Function argument 3
20
21
#define T0 $8 // Temporary register 0
22
#define T1 $9 // Temporary register 1
23
#define T2 $10 // Temporary register 2
24
#define T3 $11 // Temporary register 3
25
#define T4 $12 // Temporary register 4
26
#define T5 $13 // Temporary register 5
27
#define T6 $14 // Temporary register 6
28
#define T7 $15 // Temporary register 7
29
30
#define S0 $16 // Saved register 0
31
#define S1 $17 // Saved register 1
32
#define S2 $18 // Saved register 2
33
#define S3 $19 // Saved register 3
34
#define S4 $20 // Saved register 4
35
#define S5 $21 // Saved register 5
36
#define S6 $22 // Saved register 6
37
#define S7 $23 // Saved register 7
38
39
#define T8 $24 // Temporary register 8
40
#define T9 $25 // Temporary register 9
41
42
#define K0 $26 // Kernel register 0
43
#define K1 $27 // Kernel register 1
44
45
#define GP $gp // Global pointer
46
#define SP $sp // Stack pointer
47
#define FP $fp // Frame pointer
48
49
#define RA $ra // Return address
50
51
// -----------------------------------
52
// Coprocessor 0 registers
53
// -----------------------------------
54
55
#define C0_INDEX $0 // Select TLB entry for read / write
56
#define C0_RANDOM $1
57
#define C0_ENTRYLO0 $2
58
#define C0_ENTRYLO1 $3
59
#define C0_CONTEXT $4
60
#define C0_PAGEMASK $5
61
#define C0_WIRED $6
62
#define C0_BADVADDR $8 // Bad virtual address
63
#define C0_ENTRYHI $10
64
65
#define C0_COUNT $9 // Timer count
66
#define C0_COMPARE $11 // Timer compare
67
68
#define C0_STATUS $12 // Status register
69
#define C0_CAUSE $13 // Cause register
70
71
#define C0_EPC $14 // Exception Program Counter
72
73
#define C0_EBASE $15,1 // Exception entry point base address
74
75
#define C0_CONFIG $16 // CPU Config
76
#define C0_CONFIG1 $16,1 // Config 1 (contains TLB size)
77
#define C0_CONFIG2 $16,2
78
#define C0_CONFIG3 $16,3
79
80
#endif
Generated by
1.8.14