Heuristic: If the number of operands in the alias are more than the number of
[llvm/stm8.git] / test / MC / MBlaze / mblaze_fsl.s
blobd0a42b34991f6a6bfd20046dd99477ec05d00977
1 # RUN: llvm-mc -triple mblaze-unknown-unknown -show-encoding %s | FileCheck %s
3 # Test to ensure that all FSL immediate operands and FSL instructions
4 # can be parsed by the assembly parser correctly.
6 # TYPE F: OPCODE RD NCTAE FSL
7 # BINARY: 011011 00000 000000 00000 000000 0000
9 # TYPE FD: OPCODE RD RB NCTAE
10 # BINARY: 011011 00000 00000 00000 0 00000 00000
12 # TYPE FP: OPCODE RA NCTA FSL
13 # 000000 00000 00000 1 0000 0000000 0000
15 # CHECK: get
16 # BINARY: 011011 00000 000000 00000 000000 0000
17 # CHECK: encoding: [0x6c,0x00,0x00,0x00]
18 get r0, rfsl0
20 # CHECK: nget
21 # BINARY: 011011 00000 000000 10000 000000 0000
22 # CHECK: encoding: [0x6c,0x00,0x40,0x00]
23 nget r0, rfsl0
25 # CHECK: cget
26 # BINARY: 011011 00000 000000 01000 000000 0000
27 # CHECK: encoding: [0x6c,0x00,0x20,0x00]
28 cget r0, rfsl0
30 # CHECK: ncget
31 # BINARY: 011011 00000 000000 11000 000000 0000
32 # CHECK: encoding: [0x6c,0x00,0x60,0x00]
33 ncget r0, rfsl0
35 # CHECK: tget
36 # BINARY: 011011 00000 000000 00100 000000 0000
37 # CHECK: encoding: [0x6c,0x00,0x10,0x00]
38 tget r0, rfsl0
40 # CHECK: tnget
41 # BINARY: 011011 00000 000000 10100 000000 0000
42 # CHECK: encoding: [0x6c,0x00,0x50,0x00]
43 tnget r0, rfsl0
45 # CHECK: tcget
46 # BINARY: 011011 00000 000000 01100 000000 0000
47 # CHECK: encoding: [0x6c,0x00,0x30,0x00]
48 tcget r0, rfsl0
50 # CHECK: tncget
51 # BINARY: 011011 00000 000000 11100 000000 0000
52 # CHECK: encoding: [0x6c,0x00,0x70,0x00]
53 tncget r0, rfsl0
55 # CHECK: aget
56 # BINARY: 011011 00000 000000 00010 000000 0000
57 # CHECK: encoding: [0x6c,0x00,0x08,0x00]
58 aget r0, rfsl0
60 # CHECK: naget
61 # BINARY: 011011 00000 000000 10010 000000 0000
62 # CHECK: encoding: [0x6c,0x00,0x48,0x00]
63 naget r0, rfsl0
65 # CHECK: caget
66 # BINARY: 011011 00000 000000 01010 000000 0000
67 # CHECK: encoding: [0x6c,0x00,0x28,0x00]
68 caget r0, rfsl0
70 # CHECK: ncaget
71 # BINARY: 011011 00000 000000 11010 000000 0000
72 # CHECK: encoding: [0x6c,0x00,0x68,0x00]
73 ncaget r0, rfsl0
75 # CHECK: taget
76 # BINARY: 011011 00000 000000 00110 000000 0000
77 # CHECK: encoding: [0x6c,0x00,0x18,0x00]
78 taget r0, rfsl0
80 # CHECK: tnaget
81 # BINARY: 011011 00000 000000 10110 000000 0000
82 # CHECK: encoding: [0x6c,0x00,0x58,0x00]
83 tnaget r0, rfsl0
85 # CHECK: tcaget
86 # BINARY: 011011 00000 000000 01110 000000 0000
87 # CHECK: encoding: [0x6c,0x00,0x38,0x00]
88 tcaget r0, rfsl0
90 # CHECK: tncaget
91 # BINARY: 011011 00000 000000 11110 000000 0000
92 # CHECK: encoding: [0x6c,0x00,0x78,0x00]
93 tncaget r0, rfsl0
95 # CHECK: eget
96 # BINARY: 011011 00000 000000 00001 000000 0000
97 # CHECK: encoding: [0x6c,0x00,0x04,0x00]
98 eget r0, rfsl0
100 # CHECK: neget
101 # BINARY: 011011 00000 000000 10001 000000 0000
102 # CHECK: encoding: [0x6c,0x00,0x44,0x00]
103 neget r0, rfsl0
105 # CHECK: ecget
106 # BINARY: 011011 00000 000000 01001 000000 0000
107 # CHECK: encoding: [0x6c,0x00,0x24,0x00]
108 ecget r0, rfsl0
110 # CHECK: necget
111 # BINARY: 011011 00000 000000 11001 000000 0000
112 # CHECK: encoding: [0x6c,0x00,0x64,0x00]
113 necget r0, rfsl0
115 # CHECK: teget
116 # BINARY: 011011 00000 000000 00101 000000 0000
117 # CHECK: encoding: [0x6c,0x00,0x14,0x00]
118 teget r0, rfsl0
120 # CHECK: tneget
121 # BINARY: 011011 00000 000000 10101 000000 0000
122 # CHECK: encoding: [0x6c,0x00,0x54,0x00]
123 tneget r0, rfsl0
125 # CHECK: tecget
126 # BINARY: 011011 00000 000000 01101 000000 0000
127 # CHECK: encoding: [0x6c,0x00,0x34,0x00]
128 tecget r0, rfsl0
130 # CHECK: tnecget
131 # BINARY: 011011 00000 000000 11101 000000 0000
132 # CHECK: encoding: [0x6c,0x00,0x74,0x00]
133 tnecget r0, rfsl0
135 # CHECK: eaget
136 # BINARY: 011011 00000 000000 00011 000000 0000
137 # CHECK: encoding: [0x6c,0x00,0x0c,0x00]
138 eaget r0, rfsl0
140 # CHECK: neaget
141 # BINARY: 011011 00000 000000 10011 000000 0000
142 # CHECK: encoding: [0x6c,0x00,0x4c,0x00]
143 neaget r0, rfsl0
145 # CHECK: ecaget
146 # BINARY: 011011 00000 000000 01011 000000 0000
147 # CHECK: encoding: [0x6c,0x00,0x2c,0x00]
148 ecaget r0, rfsl0
150 # CHECK: necaget
151 # BINARY: 011011 00000 000000 11011 000000 0000
152 # CHECK: encoding: [0x6c,0x00,0x6c,0x00]
153 necaget r0, rfsl0
155 # CHECK: teaget
156 # BINARY: 011011 00000 000000 00111 000000 0000
157 # CHECK: encoding: [0x6c,0x00,0x1c,0x00]
158 teaget r0, rfsl0
160 # CHECK: tneaget
161 # BINARY: 011011 00000 000000 10111 000000 0000
162 # CHECK: encoding: [0x6c,0x00,0x5c,0x00]
163 tneaget r0, rfsl0
165 # CHECK: tecaget
166 # BINARY: 011011 00000 000000 01111 000000 0000
167 # CHECK: encoding: [0x6c,0x00,0x3c,0x00]
168 tecaget r0, rfsl0
170 # CHECK: tnecaget
171 # BINARY: 011011 00000 000000 11111 000000 0000
172 # CHECK: encoding: [0x6c,0x00,0x7c,0x00]
173 tnecaget r0, rfsl0
175 # CHECK: getd
176 # BINARY: 010011 00000 00000 00001 0 00000 00000
177 # CHECK: encoding: [0x4c,0x00,0x08,0x00]
178 getd r0, r1
180 # CHECK: ngetd
181 # BINARY: 010011 00000 00000 00001 0 10000 00000
182 # CHECK: encoding: [0x4c,0x00,0x0a,0x00]
183 ngetd r0, r1
185 # CHECK: cgetd
186 # BINARY: 010011 00000 00000 00001 0 01000 00000
187 # CHECK: encoding: [0x4c,0x00,0x09,0x00]
188 cgetd r0, r1
190 # CHECK: ncgetd
191 # BINARY: 010011 00000 00000 00001 0 11000 00000
192 # CHECK: encoding: [0x4c,0x00,0x0b,0x00]
193 ncgetd r0, r1
195 # CHECK: tgetd
196 # BINARY: 010011 00000 00000 00001 0 00100 00000
197 # CHECK: encoding: [0x4c,0x00,0x08,0x80]
198 tgetd r0, r1
200 # CHECK: tngetd
201 # BINARY: 010011 00000 00000 00001 0 10100 00000
202 # CHECK: encoding: [0x4c,0x00,0x0a,0x80]
203 tngetd r0, r1
205 # CHECK: tcgetd
206 # BINARY: 010011 00000 00000 00001 0 01100 00000
207 # CHECK: encoding: [0x4c,0x00,0x09,0x80]
208 tcgetd r0, r1
210 # CHECK: tncgetd
211 # BINARY: 010011 00000 00000 00001 0 11100 00000
212 # CHECK: encoding: [0x4c,0x00,0x0b,0x80]
213 tncgetd r0, r1
215 # CHECK: agetd
216 # BINARY: 010011 00000 00000 00001 0 00010 00000
217 # CHECK: encoding: [0x4c,0x00,0x08,0x40]
218 agetd r0, r1
220 # CHECK: nagetd
221 # BINARY: 010011 00000 00000 00001 0 10010 00000
222 # CHECK: encoding: [0x4c,0x00,0x0a,0x40]
223 nagetd r0, r1
225 # CHECK: cagetd
226 # BINARY: 010011 00000 00000 00001 0 01010 00000
227 # CHECK: encoding: [0x4c,0x00,0x09,0x40]
228 cagetd r0, r1
230 # CHECK: ncagetd
231 # BINARY: 010011 00000 00000 00001 0 11010 00000
232 # CHECK: encoding: [0x4c,0x00,0x0b,0x40]
233 ncagetd r0, r1
235 # CHECK: tagetd
236 # BINARY: 010011 00000 00000 00001 0 00110 00000
237 # CHECK: encoding: [0x4c,0x00,0x08,0xc0]
238 tagetd r0, r1
240 # CHECK: tnagetd
241 # BINARY: 010011 00000 00000 00001 0 10110 00000
242 # CHECK: encoding: [0x4c,0x00,0x0a,0xc0]
243 tnagetd r0, r1
245 # CHECK: tcagetd
246 # BINARY: 010011 00000 00000 00001 0 01110 00000
247 # CHECK: encoding: [0x4c,0x00,0x09,0xc0]
248 tcagetd r0, r1
250 # CHECK: tncagetd
251 # BINARY: 010011 00000 00000 00001 0 11110 00000
252 # CHECK: encoding: [0x4c,0x00,0x0b,0xc0]
253 tncagetd r0, r1
255 # CHECK: egetd
256 # BINARY: 010011 00000 00000 00001 0 00001 00000
257 # CHECK: encoding: [0x4c,0x00,0x08,0x20]
258 egetd r0, r1
260 # CHECK: negetd
261 # BINARY: 010011 00000 00000 00001 0 10001 00000
262 # CHECK: encoding: [0x4c,0x00,0x0a,0x20]
263 negetd r0, r1
265 # CHECK: ecgetd
266 # BINARY: 010011 00000 00000 00001 0 01001 00000
267 # CHECK: encoding: [0x4c,0x00,0x09,0x20]
268 ecgetd r0, r1
270 # CHECK: necgetd
271 # BINARY: 010011 00000 00000 00001 0 11001 00000
272 # CHECK: encoding: [0x4c,0x00,0x0b,0x20]
273 necgetd r0, r1
275 # CHECK: tegetd
276 # BINARY: 010011 00000 00000 00001 0 00101 00000
277 # CHECK: encoding: [0x4c,0x00,0x08,0xa0]
278 tegetd r0, r1
280 # CHECK: tnegetd
281 # BINARY: 010011 00000 00000 00001 0 10101 00000
282 # CHECK: encoding: [0x4c,0x00,0x0a,0xa0]
283 tnegetd r0, r1
285 # CHECK: tecgetd
286 # BINARY: 010011 00000 00000 00001 0 01101 00000
287 # CHECK: encoding: [0x4c,0x00,0x09,0xa0]
288 tecgetd r0, r1
290 # CHECK: tnecgetd
291 # BINARY: 010011 00000 00000 00001 0 11101 00000
292 # CHECK: encoding: [0x4c,0x00,0x0b,0xa0]
293 tnecgetd r0, r1
295 # CHECK: eagetd
296 # BINARY: 010011 00000 00000 00001 0 00011 00000
297 # CHECK: encoding: [0x4c,0x00,0x08,0x60]
298 eagetd r0, r1
300 # CHECK: neagetd
301 # BINARY: 010011 00000 00000 00001 0 10011 00000
302 # CHECK: encoding: [0x4c,0x00,0x0a,0x60]
303 neagetd r0, r1
305 # CHECK: ecagetd
306 # BINARY: 010011 00000 00000 00001 0 01011 00000
307 # CHECK: encoding: [0x4c,0x00,0x09,0x60]
308 ecagetd r0, r1
310 # CHECK: necagetd
311 # BINARY: 010011 00000 00000 00001 0 11011 00000
312 # CHECK: encoding: [0x4c,0x00,0x0b,0x60]
313 necagetd r0, r1
315 # CHECK: teagetd
316 # BINARY: 010011 00000 00000 00001 0 00111 00000
317 # CHECK: encoding: [0x4c,0x00,0x08,0xe0]
318 teagetd r0, r1
320 # CHECK: tneagetd
321 # BINARY: 010011 00000 00000 00001 0 10111 00000
322 # CHECK: encoding: [0x4c,0x00,0x0a,0xe0]
323 tneagetd r0, r1
325 # CHECK: tecagetd
326 # BINARY: 010011 00000 00000 00001 0 01111 00000
327 # CHECK: encoding: [0x4c,0x00,0x09,0xe0]
328 tecagetd r0, r1
330 # CHECK: tnecagetd
331 # BINARY: 010011 00000 00000 00001 0 11111 00000
332 # CHECK: encoding: [0x4c,0x00,0x0b,0xe0]
333 tnecagetd r0, r1
335 # CHECK: put
336 # BINARY: 011011 00000 00000 1 0000 0000000 0000
337 # CHECK: encoding: [0x6c,0x00,0x80,0x00]
338 put r0, rfsl0
340 # CHECK: aput
341 # BINARY: 011011 00000 00000 1 0001 0000000 0000
342 # CHECK: encoding: [0x6c,0x00,0x88,0x00]
343 aput r0, rfsl0
345 # CHECK: cput
346 # BINARY: 011011 00000 00000 1 0100 0000000 0000
347 # CHECK: encoding: [0x6c,0x00,0xa0,0x00]
348 cput r0, rfsl0
350 # CHECK: caput
351 # BINARY: 011011 00000 00000 1 0101 0000000 0000
352 # CHECK: encoding: [0x6c,0x00,0xa8,0x00]
353 caput r0, rfsl0
355 # CHECK: nput
356 # BINARY: 011011 00000 00000 1 1000 0000000 0000
357 # CHECK: encoding: [0x6c,0x00,0xc0,0x00]
358 nput r0, rfsl0
360 # CHECK: naput
361 # BINARY: 011011 00000 00000 1 1001 0000000 0000
362 # CHECK: encoding: [0x6c,0x00,0xc8,0x00]
363 naput r0, rfsl0
365 # CHECK: ncput
366 # BINARY: 011011 00000 00000 1 1100 0000000 0000
367 # CHECK: encoding: [0x6c,0x00,0xe0,0x00]
368 ncput r0, rfsl0
370 # CHECK: ncaput
371 # BINARY: 011011 00000 00000 1 1101 0000000 0000
372 # CHECK: encoding: [0x6c,0x00,0xe8,0x00]
373 ncaput r0, rfsl0
375 # CHECK: tput
376 # BINARY: 011011 00000 00000 1 0010 0000000 0000
377 # CHECK: encoding: [0x6c,0x00,0x90,0x00]
378 tput rfsl0
380 # CHECK: taput
381 # BINARY: 011011 00000 00000 1 0011 0000000 0000
382 # CHECK: encoding: [0x6c,0x00,0x98,0x00]
383 taput rfsl0
385 # CHECK: tcput
386 # BINARY: 011011 00000 00000 1 0110 0000000 0000
387 # CHECK: encoding: [0x6c,0x00,0xb0,0x00]
388 tcput rfsl0
390 # CHECK: tcaput
391 # BINARY: 011011 00000 00000 1 0111 0000000 0000
392 # CHECK: encoding: [0x6c,0x00,0xb8,0x00]
393 tcaput rfsl0
395 # CHECK: tnput
396 # BINARY: 011011 00000 00000 1 1010 0000000 0000
397 # CHECK: encoding: [0x6c,0x00,0xd0,0x00]
398 tnput rfsl0
400 # CHECK: tnaput
401 # BINARY: 011011 00000 00000 1 1011 0000000 0000
402 # CHECK: encoding: [0x6c,0x00,0xd8,0x00]
403 tnaput rfsl0
405 # CHECK: tncput
406 # BINARY: 011011 00000 00000 1 1110 0000000 0000
407 # CHECK: encoding: [0x6c,0x00,0xf0,0x00]
408 tncput rfsl0
410 # CHECK: tncaput
411 # BINARY: 011011 00000 00000 1 1111 0000000 0000
412 # CHECK: encoding: [0x6c,0x00,0xf8,0x00]
413 tncaput rfsl0
415 # CHECK: putd
416 # BINARY: 010011 00000 00000 00001 1 0000 000000
417 # CHECK: encoding: [0x4c,0x00,0x0c,0x00]
418 putd r0, r1
420 # CHECK: aputd
421 # BINARY: 010011 00000 00000 00001 1 0001 000000
422 # CHECK: encoding: [0x4c,0x00,0x0c,0x40]
423 aputd r0, r1
425 # CHECK: cputd
426 # BINARY: 010011 00000 00000 00001 1 0100 000000
427 # CHECK: encoding: [0x4c,0x00,0x0d,0x00]
428 cputd r0, r1
430 # CHECK: caputd
431 # BINARY: 010011 00000 00000 00001 1 0101 000000
432 # CHECK: encoding: [0x4c,0x00,0x0d,0x40]
433 caputd r0, r1
435 # CHECK: nputd
436 # BINARY: 010011 00000 00000 00001 1 1000 000000
437 # CHECK: encoding: [0x4c,0x00,0x0e,0x00]
438 nputd r0, r1
440 # CHECK: naputd
441 # BINARY: 010011 00000 00000 00001 1 1001 000000
442 # CHECK: encoding: [0x4c,0x00,0x0e,0x40]
443 naputd r0, r1
445 # CHECK: ncputd
446 # BINARY: 010011 00000 00000 00001 1 1100 000000
447 # CHECK: encoding: [0x4c,0x00,0x0f,0x00]
448 ncputd r0, r1
450 # CHECK: ncaputd
451 # BINARY: 010011 00000 00000 00001 1 1101 000000
452 # CHECK: encoding: [0x4c,0x00,0x0f,0x40]
453 ncaputd r0, r1
455 # CHECK: tputd
456 # BINARY: 010011 00000 00000 00001 1 0010 000000
457 # CHECK: encoding: [0x4c,0x00,0x0c,0x80]
458 tputd r1
460 # CHECK: taputd
461 # BINARY: 010011 00000 00000 00001 1 0011 000000
462 # CHECK: encoding: [0x4c,0x00,0x0c,0xc0]
463 taputd r1
465 # CHECK: tcputd
466 # BINARY: 010011 00000 00000 00001 1 0110 000000
467 # CHECK: encoding: [0x4c,0x00,0x0d,0x80]
468 tcputd r1
470 # CHECK: tcaputd
471 # BINARY: 010011 00000 00000 00001 1 0111 000000
472 # CHECK: encoding: [0x4c,0x00,0x0d,0xc0]
473 tcaputd r1
475 # CHECK: tnputd
476 # BINARY: 010011 00000 00000 00001 1 1010 000000
477 # CHECK: encoding: [0x4c,0x00,0x0e,0x80]
478 tnputd r1
480 # CHECK: tnaputd
481 # BINARY: 010011 00000 00000 00001 1 1011 000000
482 # CHECK: encoding: [0x4c,0x00,0x0e,0xc0]
483 tnaputd r1
485 # CHECK: tncputd
486 # BINARY: 010011 00000 00000 00001 1 1110 000000
487 # CHECK: encoding: [0x4c,0x00,0x0f,0x80]
488 tncputd r1
490 # CHECK: tncaputd
491 # BINARY: 010011 00000 00000 00001 1 1111 000000
492 # CHECK: encoding: [0x4c,0x00,0x0f,0xc0]
493 tncaputd r1
495 # CHECK: get
496 # BINARY: 011011 00000 000000 00000 000000 0001
497 # CHECK: encoding: [0x6c,0x00,0x00,0x01]
498 get r0, rfsl1
500 # CHECK: get
501 # BINARY: 011011 00000 000000 00000 000000 0010
502 # CHECK: encoding: [0x6c,0x00,0x00,0x02]
503 get r0, rfsl2
505 # CHECK: get
506 # BINARY: 011011 00000 000000 00000 000000 0011
507 # CHECK: encoding: [0x6c,0x00,0x00,0x03]
508 get r0, rfsl3
510 # CHECK: get
511 # BINARY: 011011 00000 000000 00000 000000 0100
512 # CHECK: encoding: [0x6c,0x00,0x00,0x04]
513 get r0, rfsl4
515 # CHECK: get
516 # BINARY: 011011 00000 000000 00000 000000 0101
517 # CHECK: encoding: [0x6c,0x00,0x00,0x05]
518 get r0, rfsl5
520 # CHECK: get
521 # BINARY: 011011 00000 000000 00000 000000 0110
522 # CHECK: encoding: [0x6c,0x00,0x00,0x06]
523 get r0, rfsl6
525 # CHECK: get
526 # BINARY: 011011 00000 000000 00000 000000 0111
527 # CHECK: encoding: [0x6c,0x00,0x00,0x07]
528 get r0, rfsl7
530 # CHECK: get
531 # BINARY: 011011 00000 000000 00000 000000 1000
532 # CHECK: encoding: [0x6c,0x00,0x00,0x08]
533 get r0, rfsl8
535 # CHECK: get
536 # BINARY: 011011 00000 000000 00000 000000 1001
537 # CHECK: encoding: [0x6c,0x00,0x00,0x09]
538 get r0, rfsl9
540 # CHECK: get
541 # BINARY: 011011 00000 000000 00000 000000 1010
542 # CHECK: encoding: [0x6c,0x00,0x00,0x0a]
543 get r0, rfsl10
545 # CHECK: get
546 # BINARY: 011011 00000 000000 00000 000000 1011
547 # CHECK: encoding: [0x6c,0x00,0x00,0x0b]
548 get r0, rfsl11
550 # CHECK: get
551 # BINARY: 011011 00000 000000 00000 000000 1100
552 # CHECK: encoding: [0x6c,0x00,0x00,0x0c]
553 get r0, rfsl12
555 # CHECK: get
556 # BINARY: 011011 00000 000000 00000 000000 1101
557 # CHECK: encoding: [0x6c,0x00,0x00,0x0d]
558 get r0, rfsl13
560 # CHECK: get
561 # BINARY: 011011 00000 000000 00000 000000 1110
562 # CHECK: encoding: [0x6c,0x00,0x00,0x0e]
563 get r0, rfsl14
565 # CHECK: get
566 # BINARY: 011011 00000 000000 00000 000000 1111
567 # CHECK: encoding: [0x6c,0x00,0x00,0x0f]
568 get r0, rfsl15