blob: 27d70e1e4e760ab2d5440479096c15a5e0a98b96 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
|
Instructions
============
This is list of all MIPS1 instructions and their implementation status in QtMips.
Explanation of checkboxes:
* [ ] Not tested
* [x] Tested
CPU Arithmetic Instruction
--------------------------
* [x] ADD
* [x] ADDI
* [x] ADDIU
* [x] ADDU
* [ ] CLO
* [ ] CLZ
* [ ] DIV
* [ ] DIVU
* [ ] MADD
* [ ] MADDU
* [ ] MSUB
* [ ] MSUBU
* [ ] MUL
* [ ] MULT
* [ ] MULTU
* [x] SLT
* [x] SLTI
* [x] SLTIU
* [x] SLTU
* [x] SUB
* [x] SUBU
CPU Branch and Jump Instructions
--------------------------------
* [x] B
* [ ] BAL
* [x] BEQ
* [x] BGEZ
* [ ] BGEZAL
* [x] BGTZ
* [x] BLEZ
* [x] BLTZ
* [ ] BLTZAL
* [x] BNE
* [x] J
* [ ] JAL
* [ ] JALR
* [x] JR
CPU No Instructions
-------------------
* [ ] NOP
* [ ] SSNOP
CPU Load, Store and Memory Control Instructions
-----------------------------------------------
* [x] LB
* [x] LBU
* [x] LH
* [x] LHU
* [ ] LL
* [x] LW
* [ ] LWL
* [ ] LWR
* [ ] PREF
* [x] SB
* [ ] SC
* [ ] SD
* [x] SH
* [x] SW
* [ ] SWL
* [ ] SWR
* [ ] SYNC
CPU Logical Instructions
------------------------
* [x] AND
* [x] ANDI
* [x] LUI
* [x] NOR
* [x] OR
* [x] ORI
* [x] XOR
* [x] XORI
CPU Move Instruction
--------------------
* [x] MFHI
* [x] MFLO
* [x] MTHI
* [x] MTHO
* [x] MOVN
* [x] MOVZ
* MOVF, MOVT won't be implemented as floating coprocessor won't be implemented
CPU Shift Instructions
----------------------
* [x] SLL
* [x] SLLV
* [x] SRA
* [x] SRAV
* [x] SRL
* [x] SRLV
CPU Trap Instructions
---------------------
Following instruction will be implemented but only as dummy ones as we are not
implementing privileged instructions. They will all result to exception and core
execution stop.
* [ ] BREAK
* [ ] TEQ
* [ ] TEQI
* [ ] TGE
* [ ] TGEI
* [ ] TGEIU
* [ ] TGEU
* [ ] TLT
* [ ] TLTI
* [ ] TLTIU
* [ ] TLTU
* [ ] TNE
* [ ] TNEI
* SYSCALL won't be implemented at all
Obsolete CPU branch instructions
--------------------------------
None of these instructions will be implemented as they are marked as obsolete and
they shouldn't be used by compiler and the same way by programmers.
FPU Instructions
----------------
No FPU instruction will be implemented as no FPU is planned to be implemented.
Coprocessor Instructions
------------------------
None of these will be implemented as coprocessor 2 won't be implemented.
Privileged instructions
-----------------------
None of these will be implemented as privileged state won't be implemented.
EJTAG Instructions
------------------
No instruction will be implemented as no ejtag support.
|