[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / Disassembler / XCore / xcore.txt
blob116433051a5af52d9173f5755957a98d2f4de4be
1 # RUN: llvm-mc --disassemble %s -triple=xcore-xmos-elf | FileCheck %s
3 # 0r instructions
5 # CHECK: clre
6 0xed 0x07
8 # CHECK: get r11, id
9 0xee 0x17
11 # CHECK: get r11, ed
12 0xfe 0x0f
14 # CHECK: get r11, et
15 0xff 0x0f
17 # CHECK: ssync
18 0xee 0x07
20 # CHECK: waiteu
21 0xec 0x07
23 # CHECK: dcall
24 0xfc 0x07
26 # CHECK: dentsp
27 0xec 0x17
29 # CHECK: drestsp
30 0xed 0x17
32 # CHECK: dret
33 0xfe 0x07
35 # CHECK: freet
36 0xef 0x07
38 # CHECK: get r11, kep
39 0xef 0x17
41 # CHECK: get r11, ksp
42 0xfc 0x17
44 # CHECK: kret
45 0xfd 0x07
47 # CHECK: ldw et, sp[4]
48 0xfe 0x17
50 # CHECK: ldw sed, sp[3]
51 0xfd 0x17
53 # CHECK: ldw spc, sp[1]
54 0xec 0x0f
56 # CHECK: ldw ssr, sp[2]
57 0xee 0x0f
59 # CHECK: set kep, r11
60 0xff 0x07
62 # CHECK: stw et, sp[4]
63 0xfd 0x0f
65 # CHECK: stw sed, sp[3]
66 0xfc 0x0f
68 # CHECK: stw spc, sp[1]
69 0xed 0x0f
71 # CHECK: stw ssr, sp[2]
72 0xef 0x0f
74 # 1r instructions
76 # CHECK: msync res[r0]
77 0xf0 0x1f
79 # CHECK: mjoin res[r1]
80 0xf1 0x17
82 # CHECK: bau r2
83 0xf2 0x27
85 # CHECK: set sp, r3
86 0xf3 0x2f
88 # CHECK: ecallt r4
89 0xf4 0x4f
91 # CHECK: ecallf r5
92 0xe5 0x4f
94 # CHECK: bla r6
95 0xe6 0x27
97 # CHECK: bru r8
98 0xe8 0x2f
100 # CHECK: syncr res[r7]
101 0xf7 0x87
103 # CHECK: freer res[r8]
104 0xe8 0x17
106 # CHECK: setv res[r9], r11
107 0xf9 0x47
109 # CHECK: setev res[r10], r11
110 0xfa 0x3f
112 # CHECK: eeu res[r11]
113 0xfb 0x07
115 # CHECK: set dp, r5
116 0xe5 0x37
118 # CHECK: set cp, r0
119 0xf0 0x37
121 # CHECK: dgetreg r11
122 0xeb 0x3f
124 # CHECK: edu res[r8]
125 0xe8 0x07
127 # CHECK: kcall r2
128 0xe2 0x47
130 # CHECK: waitef r10
131 0xfa 0x0f
133 # CHECK: waitet r7
134 0xe7 0x0f
136 # CHECK: start t[r4]
137 0xe4 0x1f
139 # CHECK: clrpt res[r9]
140 0xe9 0x87
142 # 2r instructions
144 # CHECK: not r1, r8
145 0x24 0x8f
147 # CHECK: neg r7, r6
148 0xce 0x97
150 # CHECK: andnot r10, r11
151 0xab 0x2f
153 # CHECK: mkmsk r11, r0
154 0x4c 0xa7
156 # CHECK: getts r8, res[r1]
157 0x41 0x3f
159 # CHECK: setpt res[r2], r3
160 0xde 0x3e
162 # CHECK: outct res[r1], r2
163 0xc6 0x4e
165 # CHECK: outt res[r5], r4
166 0xd1 0x0f
168 # CHECK: out res[r9], r10
169 0xa9 0xaf
171 # CHECK: outshr res[r0], r2
172 0xd8 0xae
174 # CHECK: inct r7, res[r4]
175 0xdc 0x87
177 # CHECK: int r8, res[r3]
178 0x53 0x8f
180 # CHECK: in r10, res[r0]
181 0x48 0xb7
183 # CHECK: inshr r4, res[r2]
184 0x12 0xb7
186 # CHECK: chkct res[r6], r0
187 0x08 0xcf
189 # CHECK: testct r8, res[r3]
190 0x53 0xbf
192 # CHECK: testwct r2, res[r9]
193 0x39 0xc7
195 # CHECK: setd res[r3], r4
196 0x13 0x17
198 # CHECK: getst r7, res[r1]
199 0x1d 0x07
201 # CHECK: init t[r1]:sp, r2
202 0xc9 0x16
204 # CHECK: init t[r10]:pc, r1
205 0x26 0x07
207 # CHECK: init t[r2]:cp, r10
208 0x4a 0x1f
210 # CHECK: init t[r2]:dp, r3
211 0xce 0x0e
213 # CHECK: setpsc res[r8], r2
214 0x28 0xc7
216 # CHECK: zext r3, r8
217 0x2c 0x47
219 # CHECK: sext r9, r1
220 0x45 0x37
222 # CHECK: tsetmr r7, r3
223 0x1f 0x1f
225 # CHECK: eef r1, res[r6]
226 0x96 0x2f
228 # CHECK: eet r11, res[r0]
229 0x5c 0x27
231 # rus instructions
233 # CHECK: chkct res[r1], 8
234 0x34 0xcf
236 # CHECK: getr r11, 2
237 0x4e 0x87
239 # CHECK: mkmsk r4, 24
240 0x72 0xa7
242 # CHECK: outct res[r3], 0
243 0xdc 0x4e
245 # CHECK: sext r8, 16
246 0xb1 0x37
248 # CHECK: zext r2, 32
249 0xd8 0x46
251 # CHECK: peek r0, res[r5]
252 0x81 0xbf
254 # CHECK: endin r10, res[r1]
255 0x59 0x97
257 # l2r instructions
259 # CHECK: bitrev r1, r10
260 0x26 0xff 0xec 0x07
262 # CHECK: byterev r4, r1
263 0x11 0xff 0xec 0x07
265 # CHECK: clz r11, r10
266 0xae 0xff 0xec 0x0f
268 # CHECK: get r3, ps[r6]
269 0x9e 0xff 0xec 0x17
271 # CHECK: setc res[r5], r9
272 0x75 0xff 0xec 0x2f
274 # CHECK: init t[r2]:lr, r1
275 0xc6 0xfe 0xec 0x17
277 # CHECK: setclk res[r2], r1
278 0xd6 0xfe 0xec 0x0f
280 # CHECK: set ps[r9], r10
281 0xa9 0xff 0xec 0x1f
283 # CHECK: setrdy res[r3], r1
284 0xc7 0xfe 0xec 0x2f
286 # CHECK: settw res[r7], r2
287 0x9b 0xff 0xec 0x27
289 # CHECK: getd r8, res[r3]
290 0x53 0xff 0xec 0x1f
292 # CHECK: getn r10, res[r11]
293 0xbb 0xff 0xec 0x37
295 # CHECK: testlcl r2, res[r0]
296 0xc8 0xfe 0xec 0x27
298 # CHECK: setn res[r9], r7
299 0x6d 0xff 0xec 0x37
301 # 3r instructions
303 # CHECK: add r1, r2, r3
304 0x1b 0x10
306 # CHECK: and r11, r10, r9
307 0xb9 0x3e
309 # CHECK: eq r6, r1, r2
310 0x66 0x30
312 # CHECK: ld16s r8, r3[r4]
313 0xcc 0x82
315 # CHECK: ld8u r9, r1[r10]
316 0x16 0x8d
318 # CHECK: ldw r9, r4[r5]
319 0x91 0x4b
321 # CHECK: lss r7, r3, r0
322 0x7c 0xc0
324 # CHECK: lsu r5, r8, r6
325 0x12 0xcc
327 # CHECK: or r1, r3, r2
328 0x1e 0x40
330 # CHECK: shl r8, r2, r4
331 0xc8 0x22
333 # CHECK: shr r9, r7, r1
334 0x5d 0x29
336 # CHECK: sub r4, r2, r5
337 0x89 0x1a
339 # CHECK: set t[r0]:r1, r2
340 0x18 0xb8
342 # 2rus instructions
344 # CHECK: add r10, r2, 5
345 0xe9 0x92
347 # CHECK: eq r2, r1, 0
348 0x24 0xb0
350 # CHECK: ldw r5, r6[1]
351 0x19 0x09
353 # CHECK: shl r6, r5, 24
354 0xa6 0xa5
356 # CHECK: shr r3, r8, 5
357 0xf1 0xab
359 # CHECK: stw r3, r2[0]
360 0x38 0x00
362 # CHECK: sub r2, r4, 11
363 0x63 0x9d
365 # l3r instructions
367 # CHECK: ashr r5, r1, r11
368 0xd7 0xfc 0xec 0x17
370 # CHECK: crc32 r5, r6, r1
371 0x19 0xf9 0xec 0xaf
373 # CHECK: divu r9, r1, r3
374 0x97 0xf8 0xec 0x4f
376 # CHECK: divs r6, r7, r2
377 0x2e 0xf9 0xec 0x47
379 # CHECK: lda16 r11, r2[r1]
380 0xb9 0xf8 0xec 0x2f
382 # CHECK: lda16 r9, r3[-r11]
383 0x1f 0xfd 0xec 0x37
385 # CHECK: ldaw r9, r1[r2]
386 0x96 0xf8 0xec 0x1f
388 # CHECK: ldaw r8, r7[-r11]
389 0xcf 0xfd 0xec 0x27
391 # CHECK: mul r0, r4, r2
392 0xc2 0xf8 0xec 0x3f
394 # CHECK: remu r1, r2, r3
395 0x1b 0xf8 0xec 0xcf
397 # CHECK: rems r11, r10, r9
398 0xb9 0xfe 0xec 0xc7
400 # CHECK: st16 r5, r3[r8]
401 0xdc 0xfc 0xec 0x87
403 # CHECK: st8 r9, r1[r3]
404 0x97 0xf8 0xec 0x8f
406 # CHECK: stw r7, r10[r1]
407 0xf9 0xf9 0xec 0x07
409 # CHECK: xor r4, r3, r9
410 0xcd 0xfc 0xec 0x0f
412 # l2rus instructions
414 # CHECK: ashr r5, r1, 3
415 0x57 0xf8 0xec 0x97
417 # CHECK: ldaw r11, r10[6]
418 0x7a 0xfc 0xec 0x9f
420 # CHECK: ldaw r8, r2[-9]
421 0x09 0xfd 0xec 0xa7
423 # CHECK: inpw r6, res[r1], 8
424 0xe4 0xfc 0xee 0x97
426 # CHECK: outpw res[r3], r0, 2
427 0x0e 0xf8 0xed 0x97
429 # ru6 / lru6 instructions
431 # CHECK: bt r6, -5
432 0x85 0x75
434 # CHECK: bt r10, -451
435 0x07 0xf0 0x83 0x76
437 # CHECK: bt r8, 10
438 0x0a 0x72
440 # CHECK: bt r1, 6451
441 0x64 0xf0 0x73 0x70
443 # CHECK: bf r5, 8
444 0x48 0x79
446 # CHECK: bf r6, 65
447 0x01 0xf0 0x81 0x79
449 # CHECK: bf r1, 53
450 0x75 0x78
452 # CHECK: bf r10, 101
453 0x01 0xf0 0xa5 0x7a
455 # CHECK: ldaw r11, dp[63]
456 0xff 0x62
458 # CHECK: ldaw r1, dp[456]
459 0x07 0xf0 0x48 0x60
461 # CHECK: ldaw cp, dp[5]
462 0x05 0x63
464 # CHECK: ldaw sp, dp[9929]
465 0x9b 0xf0 0x89 0x63
467 # CHECK: ldaw r3, sp[2]
468 0xc2 0x64
470 # CHECK: ldaw r8, sp[65535]
471 0xff 0xf3 0x3f 0x66
473 # CHECK: ldaw sp, sp[41]
474 0xa9 0x67
476 # CHECK: ldaw sp, sp[13121]
477 0xcd 0xf0 0x81 0x67
479 # CHECK: ldc r3, 30
480 0xde 0x68
482 # CHECK: ldc r11, 1000
483 0x0f 0xf0 0xe8 0x6a
485 # CHECK: ldc sp, 0
486 0x80 0x6b
488 # CHECK: ldc lr, 81
489 0x01 0xf0 0xd1 0x6b
491 # CHECK: ldw r0, cp[4]
492 0x04 0x6c
494 # CHECK: ldw r1, cp[32345]
495 0xf9 0xf1 0x59 0x6c
497 # CHECK: ldw cp, cp[8]
498 0x08 0x6f
500 # CHECK: ldw sp, cp[10222]
501 0x9f 0xf0 0xae 0x6f
503 # CHECK: ldw r10, dp[16]
504 0x90 0x5a
506 # CHECK: ldw r10, dp[76]
507 0x01 0xf0 0x8c 0x5a
509 # CHECK: ldw lr, dp[8]
510 0xc8 0x5b
512 # CHECK: ldw dp, dp[33221]
513 0x07 0xf2 0x45 0x5b
515 # CHECK: ldw r8, sp[51]
516 0x33 0x5e
518 # CHECK: ldw r8, sp[1225]
519 0x13 0xf0 0x09 0x5e
521 # CHECK: ldw cp, sp[31]
522 0x1f 0x5f
524 # CHECK: ldw sp, sp[1000]
525 0x0f 0xf0 0xa8 0x5f
527 # CHECK: setc res[r5], 36
528 0x64 0xe9
530 # CHECK: setc res[r2], 40312
531 0x75 0xf2 0xb8 0xe8
533 # CHECK: stw r8, dp[14]
534 0x0e 0x52
536 # CHECK: stw r9, dp[654]
537 0x0a 0xf0 0x4e 0x52
539 # CHECK: stw lr, dp[23]
540 0xd7 0x53
542 # CHECK: stw sp, dp[44442]
543 0xb6 0xf2 0x9a 0x53
545 # CHECK: stw r1, sp[32]
546 0x60 0x54
548 # CHECK: stw r0, sp[8761]
549 0x88 0xf0 0x39 0x54
551 # CHECK: stw cp, sp[63]
552 0x3f 0x57
554 # CHECK: stw lr, sp[4391]
555 0x44 0xf0 0xe7 0x57
557 # u6 / lu6 instructions
559 # CHECK: bu -20
560 0x14 0x77
562 # CHECK: bu -1000
563 0x0f 0xf0 0x28 0x77
565 # CHECK: bu 24
566 0x18 0x73
568 # CHECK: bu 2231
569 0x22 0xf0 0x37 0x73
571 # CHECK: extsp 9
572 0x89 0x77
574 # CHECK: extsp 5721
575 0x59 0xf0 0x99 0x77
577 # CHECK: clrsr 60
578 0x3c 0x7b
580 # CHECK: clrsr 64391
581 0xee 0xf3 0x07 0x7b
583 # CHECK: entsp 1
584 0x41 0x77
586 # CHECK: entsp 70
587 0x01 0xf0 0x46 0x77
589 # CHECK: ldaw r11, cp[5]
590 0x45 0x7f
592 # CHECK: ldaw r11, cp[33000]
593 0x03 0xf2 0x68 0x7f
595 # CHECK: retsp 40
596 0xe8 0x77
598 # CHECK: retsp 52010
599 0x2c 0xf3 0xea 0x77
601 # CHECK: setsr 42
602 0x6a 0x7b
604 # CHECK: setsr 21863
605 0x55 0xf1 0x67 0x7b
607 # CHECK: extdp 4
608 0x84 0x73
610 # CHECK: extdp 554
611 0x08 0xf0 0xaa 0x73
613 # CHECK: blat 9
614 0x49 0x73
616 # CHECK: blat 61212
617 0xbc 0xf3 0x5c 0x73
619 # CHECK: getsr r11, 54
620 0x36 0x7f
622 # CHECK: getsr r11, 442
623 0x06 0xf0 0x3a 0x7f
625 # CHECK: kcall 11
626 0xcb 0x73
628 # CHECK: kcall 4001
629 0x3e 0xf0 0xe1 0x73
631 # CHECK: kentsp 22
632 0x96 0x7b
634 # CHECK: kentsp 8793
635 0x89 0xf0 0x99 0x7b
637 # CHECK: krestsp 0
638 0xc0 0x7b
640 # CHECK: krestsp 55312
641 0x60 0xf3 0xd0 0x7b
643 # u10 / lu10 instructions
645 # CHECK: ldap r11, 40
646 0x28 0xd8
648 # CHECK: ldap r11, 53112
649 0x33 0xf0 0x78 0xdb
651 # CHECK: ldap r11, -22
652 0x16 0xdc
654 # CHECK: ldap r11, -9999
655 0x09 0xf0 0x0f 0xdf
657 # CHECK: bl 8
658 0x08 0xd0
660 # CHECK: bl 38631
661 0x25 0xf0 0xe7 0xd2
663 # CHECK: bl -222
664 0xde 0xd4
666 # CHECK: bl -55132
667 0x35 0xf0 0x5c 0xd7
669 # CHECK: bla cp[500]
670 0xf4 0xe1
672 # CHECK: bla cp[413742]
673 0x94 0xf1 0x2e 0xe0
675 # CHECK: ldw r11, cp[132]
676 0x84 0xe4
678 # CHECK: ldw r11, cp[102741]
679 0x64 0xf0 0x55 0xe5
681 # l6r instructions
683 # CHECK: lmul r11, r0, r2, r5, r8, r10
684 0xf9 0xfa 0x02 0x06
686 # l5r instructions
688 # CHECK: ladd r10, r2, r5, r1, r7
689 0xe5 0xf8 0xfb 0x06
691 # CHECK: ldivu r5, r6, r3, r9, r8
692 0x54 0xfe 0x0b 0x07
694 # CHECK: lsub r1, r8, r7, r11, r5
695 0xcf 0xfd 0x85 0x0f
697 # l4r instructions
699 # CHECK: crc8 r6, r3, r4, r11
700 0x73 0xfd 0xe6 0x07
702 # CHECK: maccs r11, r8, r2, r4
703 0xf8 0xfa 0xe8 0x0f
705 # CHECK: maccu r0, r2, r5, r8
706 0x44 0xfd 0xf2 0x07