summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/crx/misc_insn.s
blob: f6a2488b641907d4076b4d4c146c36bdcfec0f04 (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
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
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
# Miscellaneous instructions.
 .data
foodata: .word 42
	 .text
footext:

# Multiply instructions.
	.global macsb
macsb:
macsb r0 , r1

	.global macub
macub:
macub r2 , r3

	.global macqb
macqb:
macqb r4 , r5

	.global macsw
macsw:
macsw r6 , r7

	.global macuw
macuw:
macuw r8 , r9

	.global macqw
macqw:
macqw r10 , r11

	.global macsd
macsd:
macsd r12 , r13

	.global macud
macud:
macud r14 , r15

	.global macqd
macqd:
macqd ra , sp

	.global mullsd
mullsd:
mullsd r0 , r2

	.global mullud
mullud:
mullud r1 , r3

	.global mulsbw
mulsbw:
mulsbw r4 , r6

	.global mulubw
mulubw:
mulubw r5 , r7

	.global mulswd
mulswd:
mulswd r8 , r10

	.global muluwd
muluwd:
muluwd r9 , r11

# Signextend instructions.
	.global sextbw
sextbw:
sextbw r12 , ra

	.global sextbd
sextbd:
sextbd r13 , sp

	.global sextwd
sextwd:
sextwd r14 , r15

	.global zextbw
zextbw:
zextbw r5 , r0

	.global zextbd
zextbd:
zextbd r10 , r6

	.global zextwd
zextwd:
zextwd r7 , r15

# Misc. instructions.

	.global getrfid
getrfid:
getrfid r14

	.global setrfid
setrfid:
setrfid sp

	.global bswap
bswap:
bswap r14 , r2

	.global maxsb
maxsb:
maxsb r8 , r3

	.global minsb
minsb:
minsb r15 , r14

	.global maxub
maxub:
maxub r13 , r12

	.global minub
minub:
minub r11 , r10

	.global absb
absb:
absb r9 , r8

	.global negb
negb:
negb r7 , r6

	.global cntl0b
cntl0b:
cntl0b r5 , r4

	.global cntl1b
cntl1b:
cntl1b r3 , r2

	.global popcntb
popcntb:
popcntb r1 , r0

	.global rotlb
rotlb:
rotlb r11 , r4

	.global rotrb
rotrb:
rotrb r7 , r2

	.global mulqb
mulqb:
mulqb r14 , ra

	.global addqb
addqb:
addqb r15 , sp

	.global subqb
subqb:
subqb r0 , r10

	.global cntlsb
cntlsb:
cntlsb r2 , r12

	.global maxsw
maxsw:
maxsw r8 , r3

	.global minsw
minsw:
minsw r15 , r14

	.global maxuw
maxuw:
maxuw r13 , r12

	.global minuw
minuw:
minuw r11 , r10

	.global absw
absw:
absw r9 , r8

	.global negw
negw:
negw r7 , r6

	.global cntl0w
cntl0w:
cntl0w r5 , r4

	.global cntl1w
cntl1w:
cntl1w r3 , r2

	.global popcntw
popcntw:
popcntw r1 , r0

	.global rotlw
rotlw:
rotlw r11 , r4

	.global rotrw
rotrw:
rotrw r7 , r2

	.global mulqw
mulqw:
mulqw r14 , ra

	.global addqw
addqw:
addqw r15 , sp

	.global subqw
subqw:
subqw r0 , r10

	.global cntlsw
cntlsw:
cntlsw r2 , r12

	.global maxsd
maxsd:
maxsd r8 , r3

	.global minsd
minsd:
minsd r15 , r14

	.global maxud
maxud:
maxud r13 , r12

	.global minud
minud:
minud r11 , r10

	.global absd
absd:
absd r9 , r8

	.global negd
negd:
negd r7 , r6

	.global cntl0d
cntl0d:
cntl0d r5 , r4

	.global cntl1d
cntl1d:
cntl1d r3 , r2

	.global popcntd
popcntd:
popcntd r1 , r0

	.global rotld
rotld:
rotld r11 , r4

	.global rotrd
rotrd:
rotrd r7 , r2

	.global mulqd
mulqd:
mulqd r14 , ra

	.global addqd
addqd:
addqd r15 , sp

	.global subqd
subqd:
subqd r0 , r10

	.global cntlsd
cntlsd:
cntlsd r2 , r12

	.global mtpr
mtpr:
mtpr r0 , hi

	.global mfpr
mfpr:
mfpr lo , r5
mfpr uhi , r10

	.global mtcr
mtcr:
mtcr $0xf, r1, c14

	.global mfcr
mfcr:
mfcr $3, c7, r2

	.global mtcsr
mtcsr:
mtcsr $0x2, r5, cs1

	.global mfcsr
mfcsr:
mfcsr $01, cs12, ra

	.global bcop
bcop:
bcop $7, $3, 0x90
bcop $6, $12, -0xbcdfe

	.global excp
excp:
excp BPT
excp svc

	.global cinv
cinv:
cinv [i,d,u]

	.global ram
ram:
ram $24, $9, $1, ra, r12

	.global rim
rim:
rim $0x1f, $0xf, $0xe, r2, r1

	.global rotb
rotb:
rotb $7, r1

	.global rotw
rotw:
rotw $13, r3

	.global rotd
rotd:
rotd $27, r2