summaryrefslogtreecommitdiff
path: root/devel/psptoolchain-binutils/files/patch-include-opcode-vfpu.h
blob: c2b159021cbae71bd886b496c46011608bd4eac6 (plain) (blame)
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
--- include/opcode/vfpu.h.orig	1970-01-01 01:00:00.000000000 +0100
+++ include/opcode/vfpu.h	2006-05-09 02:55:36.000000000 +0100
@@ -0,0 +1,261 @@
+#ifndef _VFPU_H_
+#define _VFPU_H_
+
+////////////////////////////////////
+// data type
+#define VFPU_MASK_DTYPE		0x8080
+#define VFPU_QUAD		0x8080
+#define VFPU_TRIPLE		0x8000
+#define VFPU_PAIR		0x0080
+#define VFPU_SINGLE		0x0000
+
+////////////////////////////////////
+// register index
+#define VFPU_MASK_VT		0x7f0000
+#define VFPU_MASK_VS		0x007f00
+#define VFPU_MASK_VD		0x00007f
+
+////////////////////////////////////
+// condition and comapre inst
+#define VFPU_PADD_BIN_CMP	0x70
+
+////////////////////////////////////
+// load/store left/right
+#define VFPU_MASK_LDST_LR	0x2
+#define VFPU_LDST_L		0x0
+#define VFPU_LDST_R		0x2
+
+////////////////////////////////////
+// load/store memory/buffer
+#define VFPU_MASK_LDST_MB	0x2
+#define VFPU_LDST_M		0x0
+#define VFPU_LDST_B		0x2
+
+////////////////////////////////////
+// coprocessor move
+#define VFPU_MASK_COP_MV	0xff80
+#define VFPU_MASK_COP_MVC	0xff00
+
+////////////////////////////////////
+// sync code
+#define	VFPU_MASK_SYNC_CODE	0xffff
+#define	VFPU_SYNC_CODE_DEFAULT	0x0320
+#define	VFPU_SYNC_CODE_NOP	0x0000
+#define	VFPU_SYNC_CODE_FLUSH	0x040d
+
+////////////////////////////////////
+#define VFPU_INST_BR_F	 	0x49000000
+#define VFPU_MASK_BR_F	 	0xffe30000
+#define VFPU_INST_BR_FL	 	0x49020000
+#define VFPU_MASK_BR_FL	 	0xffe30000
+#define VFPU_INST_BR_T	 	0x49010000
+#define VFPU_MASK_BR_T	 	0xffe30000
+#define VFPU_INST_BR_TL	 	0x49030000
+#define VFPU_MASK_BR_TL	 	0xffe30000
+
+#define VFPU_INST_COP_LD_S 	0xc8000000
+#define VFPU_MASK_COP_LD_S 	0xfc000000
+#define VFPU_INST_COP_ST_S 	0xe8000000
+#define VFPU_MASK_COP_ST_S 	0xfc000000
+#define VFPU_INST_COP_LD_Q 	0xd8000000
+#define VFPU_MASK_COP_LD_Q 	0xfc000000
+#define VFPU_INST_COP_ST_Q 	0xf8000000
+#define VFPU_MASK_COP_ST_Q 	0xfc000000
+#define VFPU_INST_COP_LD_U 	0xd4000000
+#define VFPU_MASK_COP_LD_U 	0xfc000000
+#define VFPU_INST_COP_ST_U 	0xf4000000
+#define VFPU_MASK_COP_ST_U 	0xfc000000
+#define VFPU_INST_COP_MF 	0x48600000
+#define VFPU_MASK_COP_MF 	0xffe00000
+#define VFPU_INST_COP_MT 	0x48e00000
+#define VFPU_MASK_COP_MT 	0xffe00000
+
+#define VFPU_INST_BIN_ADD 	0x60000000
+#define VFPU_MASK_BIN_ADD 	0xff800000
+#define VFPU_INST_BIN_SUB 	0x60800000
+#define VFPU_MASK_BIN_SUB 	0xff800000
+#define VFPU_INST_BIN_SBN 	0x61000000
+#define VFPU_MASK_BIN_SBN 	0xff800000
+#define VFPU_INST_BIN_DIV 	0x63800000
+#define VFPU_MASK_BIN_DIV 	0xff800000
+#define VFPU_INST_BIN_MUL 	0x64000000
+#define VFPU_MASK_BIN_MUL 	0xff800000
+#define VFPU_INST_BIN_DOT 	0x64800000
+#define VFPU_MASK_BIN_DOT 	0xff800000
+#define VFPU_INST_BIN_SCL 	0x65000000
+#define VFPU_MASK_BIN_SCL 	0xff800000
+#define VFPU_INST_BIN_HDP 	0x66000000
+#define VFPU_MASK_BIN_HDP 	0xff800000
+#define VFPU_INST_BIN_CRS 	0x66800000
+#define VFPU_MASK_BIN_CRS 	0xff800000
+#define VFPU_INST_BIN_DET 	0x67000000
+#define VFPU_MASK_BIN_DET 	0xff800000
+#define VFPU_INST_BIN_CMP 	0x6c000000
+#define VFPU_MASK_BIN_CMP 	0xff800000
+#define VFPU_INST_BIN_MIN 	0x6d000000
+#define VFPU_MASK_BIN_MIN 	0xff800000
+#define VFPU_INST_BIN_MAX 	0x6d800000
+#define VFPU_MASK_BIN_MAX 	0xff800000
+#define VFPU_INST_BIN_SCMP 	0x6e800000
+#define VFPU_MASK_BIN_SCMP 	0xff800000
+#define VFPU_INST_BIN_SGE 	0x6f000000
+#define VFPU_MASK_BIN_SGE 	0xff800000
+#define VFPU_INST_BIN_SLT 	0x6f800000
+#define VFPU_MASK_BIN_SLT 	0xff800000
+
+#define VFPU_INST_UNR_MOV 	0xd0000000
+#define VFPU_MASK_UNR_MOV 	0xffff0000
+#define VFPU_INST_UNR_ABS 	0xd0010000
+#define VFPU_MASK_UNR_ABS 	0xffff0000
+#define VFPU_INST_UNR_NEG 	0xd0020000
+#define VFPU_MASK_UNR_NEG 	0xffff0000
+#define VFPU_INST_UNR_IDT 	0xd0030000
+#define VFPU_MASK_UNR_IDT 	0xffff0000
+#define VFPU_INST_UNR_SAT0 	0xd0040000
+#define VFPU_MASK_UNR_SAT0 	0xffff0000
+#define VFPU_INST_UNR_SAT1 	0xd0050000
+#define VFPU_MASK_UNR_SAT1 	0xffff0000
+#define VFPU_INST_UNR_ZERO 	0xd0060000
+#define VFPU_MASK_UNR_ZERO 	0xffff0000
+#define VFPU_INST_UNR_ONE 	0xd0070000
+#define VFPU_MASK_UNR_ONE 	0xffff0000
+#define VFPU_INST_UNR_RCP 	0xd0100000
+#define VFPU_MASK_UNR_RCP 	0xffff0000
+#define VFPU_INST_UNR_RSQ 	0xd0110000
+#define VFPU_MASK_UNR_RSQ 	0xffff0000
+#define VFPU_INST_UNR_SIN 	0xd0120000
+#define VFPU_MASK_UNR_SIN 	0xffff0000
+#define VFPU_INST_UNR_COS 	0xd0130000
+#define VFPU_MASK_UNR_COS 	0xffff0000
+#define VFPU_INST_UNR_EXP2 	0xd0140000
+#define VFPU_MASK_UNR_EXP2 	0xffff0000
+#define VFPU_INST_UNR_LOG2 	0xd0150000
+#define VFPU_MASK_UNR_LOG2 	0xffff0000
+#define VFPU_INST_UNR_SQR 	0xd0160000
+#define VFPU_MASK_UNR_SQR 	0xffff0000
+#define VFPU_INST_UNR_ASIN 	0xd0170000
+#define VFPU_MASK_UNR_ASIN 	0xffff0000
+#define VFPU_INST_UNR_NRCP 	0xd0180000
+#define VFPU_MASK_UNR_NRCP 	0xffff0000
+#define VFPU_INST_UNR_NSIN 	0xd01a0000
+#define VFPU_MASK_UNR_NSIN 	0xffff0000
+#define VFPU_INST_UNR_REXP2 	0xd01c0000
+#define VFPU_MASK_UNR_REXP2 	0xffff0000
+#define VFPU_INST_UNR_RNDS 	0xd0200000
+#define VFPU_MASK_UNR_RNDS 	0xffff0000
+#define VFPU_INST_UNR_RNDI 	0xd0210000
+#define VFPU_MASK_UNR_RNDI 	0xffff0000
+#define VFPU_INST_UNR_RNDF1 	0xd0220000
+#define VFPU_MASK_UNR_RNDF1 	0xffff0000
+#define VFPU_INST_UNR_RNDF2 	0xd0230000
+#define VFPU_MASK_UNR_RNDF2 	0xffff0000
+#define VFPU_INST_UNR_F2H 	0xd0320000
+#define VFPU_MASK_UNR_F2H 	0xffff0000
+#define VFPU_INST_UNR_H2F 	0xd0330000
+#define VFPU_MASK_UNR_H2F 	0xffff0000
+#define VFPU_INST_UNR_SBZ 	0xd0360000
+#define VFPU_MASK_UNR_SBZ 	0xffff0000
+#define VFPU_INST_UNR_LGB 	0xd0370000
+#define VFPU_MASK_UNR_LGB 	0xffff0000
+#define	VFPU_INST_UNR_US2I	0xd03a0000
+#define	VFPU_MASK_UNR_US2I	0xffff0000
+#define	VFPU_INST_UNR_S2I	0xd03b0000
+#define	VFPU_MASK_UNR_S2I	0xffff0000
+#define	VFPU_INST_UNR_I2UC	0xd03c0000
+#define	VFPU_MASK_UNR_I2UC	0xffff0000
+#define	VFPU_INST_UNR_I2C	0xd03d0000
+#define	VFPU_MASK_UNR_I2C	0xffff0000
+#define	VFPU_INST_UNR_I2US	0xd03e0000
+#define	VFPU_MASK_UNR_I2US	0xffff0000
+#define	VFPU_INST_UNR_I2S	0xd03f0000
+#define	VFPU_MASK_UNR_I2S	0xffff0000
+#define VFPU_INST_UNR_SRT1 	0xd0400000
+#define VFPU_MASK_UNR_SRT1 	0xffff0000
+#define VFPU_INST_UNR_SRT2 	0xd0410000
+#define VFPU_MASK_UNR_SRT2 	0xffff0000
+#define VFPU_INST_UNR_BFY1 	0xd0420000
+#define VFPU_MASK_UNR_BFY1 	0xffff0000
+#define VFPU_INST_UNR_BFY2 	0xd0430000
+#define VFPU_MASK_UNR_BFY2 	0xffff0000
+#define VFPU_INST_UNR_OCP 	0xd0440000
+#define VFPU_MASK_UNR_OCP 	0xffff0000
+#define VFPU_INST_UNR_SOCP 	0xd0450000
+#define VFPU_MASK_UNR_SOCP 	0xffff0000
+#define VFPU_INST_UNR_FAD 	0xd0460000
+#define VFPU_MASK_UNR_FAD 	0xffff0000
+#define VFPU_INST_UNR_AVG 	0xd0470000
+#define VFPU_MASK_UNR_AVG 	0xffff0000
+#define VFPU_INST_UNR_SRT3 	0xd0480000
+#define VFPU_MASK_UNR_SRT3 	0xffff0000
+#define VFPU_INST_UNR_SRT4 	0xd0490000
+#define VFPU_MASK_UNR_SRT4 	0xffff0000
+#define VFPU_INST_UNR_SGN 	0xd04a0000
+#define VFPU_MASK_UNR_SGN 	0xffff0000
+#define VFPU_INST_UNR_CF 	0xd0500000
+#define VFPU_MASK_UNR_CF 	0xffff0080
+#define VFPU_INST_UNR_CT 	0xd0510000
+#define VFPU_MASK_UNR_CT 	0xffff8000
+#define VFPU_INST_UNR_T4444 	0xd0590000
+#define VFPU_MASK_UNR_T4444 	0xffff0000
+#define VFPU_INST_UNR_T5551 	0xd05a0000
+#define VFPU_MASK_UNR_T5551 	0xffff0000
+#define VFPU_INST_UNR_T5650 	0xd05b0000
+#define VFPU_MASK_UNR_T5650 	0xffff0000
+#define VFPU_INST_UNR_CST 	0xd0600000
+#define VFPU_MASK_UNR_CST 	0xffe00000
+
+#define VFPU_INST_UNRI_F2I_N 	0xd2000000
+#define VFPU_MASK_UNRI_F2I_N 	0xffe00000
+#define VFPU_INST_UNRI_F2I_Z 	0xd2200000
+#define VFPU_MASK_UNRI_F2I_Z 	0xffe00000
+#define VFPU_INST_UNRI_F2I_U 	0xd2400000
+#define VFPU_MASK_UNRI_F2I_U 	0xffe00000
+#define VFPU_INST_UNRI_F2I_D 	0xd2600000
+#define VFPU_MASK_UNRI_F2I_D 	0xffe00000
+#define VFPU_INST_UNRI_I2F 	0xd2800000
+#define VFPU_MASK_UNRI_I2F 	0xffe00000
+#define VFPU_INST_UNRI_CMOV_T 	0xd2a00000
+#define VFPU_MASK_UNRI_CMOV_T	0xfff80000
+#define VFPU_INST_UNRI_CMOV_F 	0xd2a80000
+#define VFPU_MASK_UNRI_CMOV_F	0xfff80000
+#define VFPU_INST_UNRI_WBN 	0xd3000000
+#define VFPU_MASK_UNRI_WBN 	0xff000000
+
+#define VFPU_INST_PFX_RA 	0xdc000000
+#define VFPU_MASK_PFX_RA 	0xff000000
+#define VFPU_INST_PFX_RB 	0xdd000000
+#define VFPU_MASK_PFX_RB 	0xff000000
+#define VFPU_INST_PFX_W 	0xde000000
+#define VFPU_MASK_PFX_W 	0xff000000
+#define VFPU_INST_IIM	 	0xdf000000
+#define VFPU_MASK_IIM	 	0xff800000
+#define VFPU_INST_FIM	 	0xdf800000
+#define VFPU_MASK_FIM	 	0xff800000
+
+#define VFPU_INST_RPT_MMUL 	0xf0000000
+#define VFPU_MASK_RPT_MMUL 	0xff800000
+#define VFPU_INST_RPT_TFM2 	0xf0800000
+#define VFPU_MASK_RPT_TFM2 	0xff800000
+#define VFPU_INST_RPT_TFM3 	0xf1000000
+#define VFPU_MASK_RPT_TFM3 	0xff800000
+#define VFPU_INST_RPT_TFM4 	0xf1800000
+#define VFPU_MASK_RPT_TFM4 	0xff800000
+#define VFPU_INST_RPT_MSCL 	0xf2000000
+#define VFPU_MASK_RPT_MSCL 	0xff800000
+#define VFPU_INST_RPT_QMUL 	0xf2800000
+#define VFPU_MASK_RPT_QMUL 	0xff800000
+#define VFPU_INST_RPT_MMOV 	0xf3800000
+#define VFPU_MASK_RPT_MMOV 	0xffff0000
+#define VFPU_INST_RPT_MIDT 	0xf3830000
+#define VFPU_MASK_RPT_MIDT 	0xffff0000
+#define VFPU_INST_RPT_MZERO 	0xf3860000
+#define VFPU_MASK_RPT_MZERO 	0xffff0000
+#define VFPU_INST_RPT_MONE 	0xf3870000
+#define VFPU_MASK_RPT_MONE 	0xffff0000
+#define VFPU_INST_RPT_ROT 	0xf3a00000
+#define VFPU_MASK_RPT_ROT 	0xffe00000
+
+#define VFPU_INST_SYNC		0xffff0000
+#define VFPU_MASK_SYNC		0xffff0000
+
+#endif /* _VFPU_H_ */