bfd/
[binutils.git] / opcodes / tilepro-opc.c
blobc3f6be4b46abcc0af44c62ae73a2fa81dbb19633
1 /* TILEPro opcode information.
3 Copyright 2011 Free Software Foundation, Inc.
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 3 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
18 MA 02110-1301, USA. */
20 /* This define is BFD_RELOC_##x for real bfd, or -1 for everyone else. */
21 #define BFD_RELOC(x) BFD_RELOC_##x
23 #include "bfd.h"
25 /* Special registers. */
26 #define TREG_LR 55
27 #define TREG_SN 56
28 #define TREG_ZERO 63
30 #if defined(__KERNEL__) || defined(_LIBC)
31 /* FIXME: Rename this. */
32 #include <asm/opcode-tile.h>
33 #define DISASM_ONLY
34 #else
35 #include "opcode/tilepro.h"
36 #endif
38 #ifdef __KERNEL__
39 #include <linux/stddef.h>
40 #else
41 #include <stddef.h>
42 #endif
44 const struct tilepro_opcode tilepro_opcodes[395] =
46 { "bpt", TILEPRO_OPC_BPT, 0x2, 0, TREG_ZERO, 0,
47 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
48 #ifndef DISASM_ONLY
50 0ULL,
51 0xfbffffff80000000ULL,
52 0ULL,
53 0ULL,
54 0ULL
57 -1ULL,
58 0x400b3cae00000000ULL,
59 -1ULL,
60 -1ULL,
61 -1ULL
63 #endif
65 { "info", TILEPRO_OPC_INFO, 0xf, 1, TREG_ZERO, 1,
66 { { 0 }, { 1 }, { 2 }, { 3 }, { 0, } },
67 #ifndef DISASM_ONLY
69 0x800000007ff00fffULL,
70 0xfff807ff80000000ULL,
71 0x8000000078000fffULL,
72 0xf80007ff80000000ULL,
73 0ULL
76 0x0000000050100fffULL,
77 0x302007ff80000000ULL,
78 0x8000000050000fffULL,
79 0xc00007ff80000000ULL,
80 -1ULL
82 #endif
84 { "infol", TILEPRO_OPC_INFOL, 0x3, 1, TREG_ZERO, 1,
85 { { 4 }, { 5 }, { 0, }, { 0, }, { 0, } },
86 #ifndef DISASM_ONLY
88 0x8000000070000fffULL,
89 0xf80007ff80000000ULL,
90 0ULL,
91 0ULL,
92 0ULL
95 0x0000000030000fffULL,
96 0x200007ff80000000ULL,
97 -1ULL,
98 -1ULL,
99 -1ULL
101 #endif
103 { "j", TILEPRO_OPC_J, 0x2, 1, TREG_ZERO, 1,
104 { { 0, }, { 6 }, { 0, }, { 0, }, { 0, } },
105 #ifndef DISASM_ONLY
107 0ULL,
108 0xf000000000000000ULL,
109 0ULL,
110 0ULL,
111 0ULL
114 -1ULL,
115 0x5000000000000000ULL,
116 -1ULL,
117 -1ULL,
118 -1ULL
120 #endif
122 { "jal", TILEPRO_OPC_JAL, 0x2, 1, TREG_LR, 1,
123 { { 0, }, { 6 }, { 0, }, { 0, }, { 0, } },
124 #ifndef DISASM_ONLY
126 0ULL,
127 0xf000000000000000ULL,
128 0ULL,
129 0ULL,
130 0ULL
133 -1ULL,
134 0x6000000000000000ULL,
135 -1ULL,
136 -1ULL,
137 -1ULL
139 #endif
141 { "move", TILEPRO_OPC_MOVE, 0xf, 2, TREG_ZERO, 1,
142 { { 7, 8 }, { 9, 10 }, { 11, 12 }, { 13, 14 }, { 0, } },
143 #ifndef DISASM_ONLY
145 0x800000007ffff000ULL,
146 0xfffff80000000000ULL,
147 0x80000000780ff000ULL,
148 0xf807f80000000000ULL,
149 0ULL
152 0x0000000000cff000ULL,
153 0x0833f80000000000ULL,
154 0x80000000180bf000ULL,
155 0x9805f80000000000ULL,
156 -1ULL
158 #endif
160 { "move.sn", TILEPRO_OPC_MOVE_SN, 0x3, 2, TREG_SN, 1,
161 { { 7, 8 }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
162 #ifndef DISASM_ONLY
164 0x800000007ffff000ULL,
165 0xfffff80000000000ULL,
166 0ULL,
167 0ULL,
168 0ULL
171 0x0000000008cff000ULL,
172 0x0c33f80000000000ULL,
173 -1ULL,
174 -1ULL,
175 -1ULL
177 #endif
179 { "movei", TILEPRO_OPC_MOVEI, 0xf, 2, TREG_ZERO, 1,
180 { { 7, 0 }, { 9, 1 }, { 11, 2 }, { 13, 3 }, { 0, } },
181 #ifndef DISASM_ONLY
183 0x800000007ff00fc0ULL,
184 0xfff807e000000000ULL,
185 0x8000000078000fc0ULL,
186 0xf80007e000000000ULL,
187 0ULL
190 0x0000000040800fc0ULL,
191 0x305807e000000000ULL,
192 0x8000000058000fc0ULL,
193 0xc80007e000000000ULL,
194 -1ULL
196 #endif
198 { "movei.sn", TILEPRO_OPC_MOVEI_SN, 0x3, 2, TREG_SN, 1,
199 { { 7, 0 }, { 9, 1 }, { 0, }, { 0, }, { 0, } },
200 #ifndef DISASM_ONLY
202 0x800000007ff00fc0ULL,
203 0xfff807e000000000ULL,
204 0ULL,
205 0ULL,
206 0ULL
209 0x0000000048800fc0ULL,
210 0x345807e000000000ULL,
211 -1ULL,
212 -1ULL,
213 -1ULL
215 #endif
217 { "moveli", TILEPRO_OPC_MOVELI, 0x3, 2, TREG_ZERO, 1,
218 { { 7, 4 }, { 9, 5 }, { 0, }, { 0, }, { 0, } },
219 #ifndef DISASM_ONLY
221 0x8000000070000fc0ULL,
222 0xf80007e000000000ULL,
223 0ULL,
224 0ULL,
225 0ULL
228 0x0000000020000fc0ULL,
229 0x180007e000000000ULL,
230 -1ULL,
231 -1ULL,
232 -1ULL
234 #endif
236 { "moveli.sn", TILEPRO_OPC_MOVELI_SN, 0x3, 2, TREG_SN, 1,
237 { { 7, 4 }, { 9, 5 }, { 0, }, { 0, }, { 0, } },
238 #ifndef DISASM_ONLY
240 0x8000000070000fc0ULL,
241 0xf80007e000000000ULL,
242 0ULL,
243 0ULL,
244 0ULL
247 0x0000000010000fc0ULL,
248 0x100007e000000000ULL,
249 -1ULL,
250 -1ULL,
251 -1ULL
253 #endif
255 { "movelis", TILEPRO_OPC_MOVELIS, 0x3, 2, TREG_SN, 1,
256 { { 7, 4 }, { 9, 5 }, { 0, }, { 0, }, { 0, } },
257 #ifndef DISASM_ONLY
259 0x8000000070000fc0ULL,
260 0xf80007e000000000ULL,
261 0ULL,
262 0ULL,
263 0ULL
266 0x0000000010000fc0ULL,
267 0x100007e000000000ULL,
268 -1ULL,
269 -1ULL,
270 -1ULL
272 #endif
274 { "prefetch", TILEPRO_OPC_PREFETCH, 0x12, 1, TREG_ZERO, 1,
275 { { 0, }, { 10 }, { 0, }, { 0, }, { 15 } },
276 #ifndef DISASM_ONLY
278 0ULL,
279 0xfffff81f80000000ULL,
280 0ULL,
281 0ULL,
282 0x8700000003f00000ULL
285 -1ULL,
286 0x400b501f80000000ULL,
287 -1ULL,
288 -1ULL,
289 0x8000000003f00000ULL
291 #endif
293 { "raise", TILEPRO_OPC_RAISE, 0x2, 0, TREG_ZERO, 1,
294 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
295 #ifndef DISASM_ONLY
297 0ULL,
298 0xfbffffff80000000ULL,
299 0ULL,
300 0ULL,
301 0ULL
304 -1ULL,
305 0x400b3cae80000000ULL,
306 -1ULL,
307 -1ULL,
308 -1ULL
310 #endif
312 { "add", TILEPRO_OPC_ADD, 0xf, 3, TREG_ZERO, 1,
313 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
314 #ifndef DISASM_ONLY
316 0x800000007ffc0000ULL,
317 0xfffe000000000000ULL,
318 0x80000000780c0000ULL,
319 0xf806000000000000ULL,
320 0ULL
323 0x00000000000c0000ULL,
324 0x0806000000000000ULL,
325 0x8000000008000000ULL,
326 0x8800000000000000ULL,
327 -1ULL
329 #endif
331 { "add.sn", TILEPRO_OPC_ADD_SN, 0x3, 3, TREG_SN, 1,
332 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
333 #ifndef DISASM_ONLY
335 0x800000007ffc0000ULL,
336 0xfffe000000000000ULL,
337 0ULL,
338 0ULL,
339 0ULL
342 0x00000000080c0000ULL,
343 0x0c06000000000000ULL,
344 -1ULL,
345 -1ULL,
346 -1ULL
348 #endif
350 { "addb", TILEPRO_OPC_ADDB, 0x3, 3, TREG_ZERO, 1,
351 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
352 #ifndef DISASM_ONLY
354 0x800000007ffc0000ULL,
355 0xfffe000000000000ULL,
356 0ULL,
357 0ULL,
358 0ULL
361 0x0000000000040000ULL,
362 0x0802000000000000ULL,
363 -1ULL,
364 -1ULL,
365 -1ULL
367 #endif
369 { "addb.sn", TILEPRO_OPC_ADDB_SN, 0x3, 3, TREG_SN, 1,
370 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
371 #ifndef DISASM_ONLY
373 0x800000007ffc0000ULL,
374 0xfffe000000000000ULL,
375 0ULL,
376 0ULL,
377 0ULL
380 0x0000000008040000ULL,
381 0x0c02000000000000ULL,
382 -1ULL,
383 -1ULL,
384 -1ULL
386 #endif
388 { "addbs_u", TILEPRO_OPC_ADDBS_U, 0x3, 3, TREG_ZERO, 1,
389 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
390 #ifndef DISASM_ONLY
392 0x800000007ffc0000ULL,
393 0xfffe000000000000ULL,
394 0ULL,
395 0ULL,
396 0ULL
399 0x0000000001880000ULL,
400 0x0888000000000000ULL,
401 -1ULL,
402 -1ULL,
403 -1ULL
405 #endif
407 { "addbs_u.sn", TILEPRO_OPC_ADDBS_U_SN, 0x3, 3, TREG_SN, 1,
408 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
409 #ifndef DISASM_ONLY
411 0x800000007ffc0000ULL,
412 0xfffe000000000000ULL,
413 0ULL,
414 0ULL,
415 0ULL
418 0x0000000009880000ULL,
419 0x0c88000000000000ULL,
420 -1ULL,
421 -1ULL,
422 -1ULL
424 #endif
426 { "addh", TILEPRO_OPC_ADDH, 0x3, 3, TREG_ZERO, 1,
427 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
428 #ifndef DISASM_ONLY
430 0x800000007ffc0000ULL,
431 0xfffe000000000000ULL,
432 0ULL,
433 0ULL,
434 0ULL
437 0x0000000000080000ULL,
438 0x0804000000000000ULL,
439 -1ULL,
440 -1ULL,
441 -1ULL
443 #endif
445 { "addh.sn", TILEPRO_OPC_ADDH_SN, 0x3, 3, TREG_SN, 1,
446 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
447 #ifndef DISASM_ONLY
449 0x800000007ffc0000ULL,
450 0xfffe000000000000ULL,
451 0ULL,
452 0ULL,
453 0ULL
456 0x0000000008080000ULL,
457 0x0c04000000000000ULL,
458 -1ULL,
459 -1ULL,
460 -1ULL
462 #endif
464 { "addhs", TILEPRO_OPC_ADDHS, 0x3, 3, TREG_ZERO, 1,
465 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
466 #ifndef DISASM_ONLY
468 0x800000007ffc0000ULL,
469 0xfffe000000000000ULL,
470 0ULL,
471 0ULL,
472 0ULL
475 0x00000000018c0000ULL,
476 0x088a000000000000ULL,
477 -1ULL,
478 -1ULL,
479 -1ULL
481 #endif
483 { "addhs.sn", TILEPRO_OPC_ADDHS_SN, 0x3, 3, TREG_SN, 1,
484 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
485 #ifndef DISASM_ONLY
487 0x800000007ffc0000ULL,
488 0xfffe000000000000ULL,
489 0ULL,
490 0ULL,
491 0ULL
494 0x00000000098c0000ULL,
495 0x0c8a000000000000ULL,
496 -1ULL,
497 -1ULL,
498 -1ULL
500 #endif
502 { "addi", TILEPRO_OPC_ADDI, 0xf, 3, TREG_ZERO, 1,
503 { { 7, 8, 0 }, { 9, 10, 1 }, { 11, 12, 2 }, { 13, 14, 3 }, { 0, } },
504 #ifndef DISASM_ONLY
506 0x800000007ff00000ULL,
507 0xfff8000000000000ULL,
508 0x8000000078000000ULL,
509 0xf800000000000000ULL,
510 0ULL
513 0x0000000040300000ULL,
514 0x3018000000000000ULL,
515 0x8000000048000000ULL,
516 0xb800000000000000ULL,
517 -1ULL
519 #endif
521 { "addi.sn", TILEPRO_OPC_ADDI_SN, 0x3, 3, TREG_SN, 1,
522 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
523 #ifndef DISASM_ONLY
525 0x800000007ff00000ULL,
526 0xfff8000000000000ULL,
527 0ULL,
528 0ULL,
529 0ULL
532 0x0000000048300000ULL,
533 0x3418000000000000ULL,
534 -1ULL,
535 -1ULL,
536 -1ULL
538 #endif
540 { "addib", TILEPRO_OPC_ADDIB, 0x3, 3, TREG_ZERO, 1,
541 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
542 #ifndef DISASM_ONLY
544 0x800000007ff00000ULL,
545 0xfff8000000000000ULL,
546 0ULL,
547 0ULL,
548 0ULL
551 0x0000000040100000ULL,
552 0x3008000000000000ULL,
553 -1ULL,
554 -1ULL,
555 -1ULL
557 #endif
559 { "addib.sn", TILEPRO_OPC_ADDIB_SN, 0x3, 3, TREG_SN, 1,
560 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
561 #ifndef DISASM_ONLY
563 0x800000007ff00000ULL,
564 0xfff8000000000000ULL,
565 0ULL,
566 0ULL,
567 0ULL
570 0x0000000048100000ULL,
571 0x3408000000000000ULL,
572 -1ULL,
573 -1ULL,
574 -1ULL
576 #endif
578 { "addih", TILEPRO_OPC_ADDIH, 0x3, 3, TREG_ZERO, 1,
579 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
580 #ifndef DISASM_ONLY
582 0x800000007ff00000ULL,
583 0xfff8000000000000ULL,
584 0ULL,
585 0ULL,
586 0ULL
589 0x0000000040200000ULL,
590 0x3010000000000000ULL,
591 -1ULL,
592 -1ULL,
593 -1ULL
595 #endif
597 { "addih.sn", TILEPRO_OPC_ADDIH_SN, 0x3, 3, TREG_SN, 1,
598 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
599 #ifndef DISASM_ONLY
601 0x800000007ff00000ULL,
602 0xfff8000000000000ULL,
603 0ULL,
604 0ULL,
605 0ULL
608 0x0000000048200000ULL,
609 0x3410000000000000ULL,
610 -1ULL,
611 -1ULL,
612 -1ULL
614 #endif
616 { "addli", TILEPRO_OPC_ADDLI, 0x3, 3, TREG_ZERO, 1,
617 { { 7, 8, 4 }, { 9, 10, 5 }, { 0, }, { 0, }, { 0, } },
618 #ifndef DISASM_ONLY
620 0x8000000070000000ULL,
621 0xf800000000000000ULL,
622 0ULL,
623 0ULL,
624 0ULL
627 0x0000000020000000ULL,
628 0x1800000000000000ULL,
629 -1ULL,
630 -1ULL,
631 -1ULL
633 #endif
635 { "addli.sn", TILEPRO_OPC_ADDLI_SN, 0x3, 3, TREG_SN, 1,
636 { { 7, 8, 4 }, { 9, 10, 5 }, { 0, }, { 0, }, { 0, } },
637 #ifndef DISASM_ONLY
639 0x8000000070000000ULL,
640 0xf800000000000000ULL,
641 0ULL,
642 0ULL,
643 0ULL
646 0x0000000010000000ULL,
647 0x1000000000000000ULL,
648 -1ULL,
649 -1ULL,
650 -1ULL
652 #endif
654 { "addlis", TILEPRO_OPC_ADDLIS, 0x3, 3, TREG_SN, 1,
655 { { 7, 8, 4 }, { 9, 10, 5 }, { 0, }, { 0, }, { 0, } },
656 #ifndef DISASM_ONLY
658 0x8000000070000000ULL,
659 0xf800000000000000ULL,
660 0ULL,
661 0ULL,
662 0ULL
665 0x0000000010000000ULL,
666 0x1000000000000000ULL,
667 -1ULL,
668 -1ULL,
669 -1ULL
671 #endif
673 { "adds", TILEPRO_OPC_ADDS, 0x3, 3, TREG_ZERO, 1,
674 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
675 #ifndef DISASM_ONLY
677 0x800000007ffc0000ULL,
678 0xfffe000000000000ULL,
679 0ULL,
680 0ULL,
681 0ULL
684 0x0000000001800000ULL,
685 0x0884000000000000ULL,
686 -1ULL,
687 -1ULL,
688 -1ULL
690 #endif
692 { "adds.sn", TILEPRO_OPC_ADDS_SN, 0x3, 3, TREG_SN, 1,
693 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
694 #ifndef DISASM_ONLY
696 0x800000007ffc0000ULL,
697 0xfffe000000000000ULL,
698 0ULL,
699 0ULL,
700 0ULL
703 0x0000000009800000ULL,
704 0x0c84000000000000ULL,
705 -1ULL,
706 -1ULL,
707 -1ULL
709 #endif
711 { "adiffb_u", TILEPRO_OPC_ADIFFB_U, 0x1, 3, TREG_ZERO, 1,
712 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
713 #ifndef DISASM_ONLY
715 0x800000007ffc0000ULL,
716 0ULL,
717 0ULL,
718 0ULL,
719 0ULL
722 0x0000000000100000ULL,
723 -1ULL,
724 -1ULL,
725 -1ULL,
726 -1ULL
728 #endif
730 { "adiffb_u.sn", TILEPRO_OPC_ADIFFB_U_SN, 0x1, 3, TREG_SN, 1,
731 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
732 #ifndef DISASM_ONLY
734 0x800000007ffc0000ULL,
735 0ULL,
736 0ULL,
737 0ULL,
738 0ULL
741 0x0000000008100000ULL,
742 -1ULL,
743 -1ULL,
744 -1ULL,
745 -1ULL
747 #endif
749 { "adiffh", TILEPRO_OPC_ADIFFH, 0x1, 3, TREG_ZERO, 1,
750 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
751 #ifndef DISASM_ONLY
753 0x800000007ffc0000ULL,
754 0ULL,
755 0ULL,
756 0ULL,
757 0ULL
760 0x0000000000140000ULL,
761 -1ULL,
762 -1ULL,
763 -1ULL,
764 -1ULL
766 #endif
768 { "adiffh.sn", TILEPRO_OPC_ADIFFH_SN, 0x1, 3, TREG_SN, 1,
769 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
770 #ifndef DISASM_ONLY
772 0x800000007ffc0000ULL,
773 0ULL,
774 0ULL,
775 0ULL,
776 0ULL
779 0x0000000008140000ULL,
780 -1ULL,
781 -1ULL,
782 -1ULL,
783 -1ULL
785 #endif
787 { "and", TILEPRO_OPC_AND, 0xf, 3, TREG_ZERO, 1,
788 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
789 #ifndef DISASM_ONLY
791 0x800000007ffc0000ULL,
792 0xfffe000000000000ULL,
793 0x80000000780c0000ULL,
794 0xf806000000000000ULL,
795 0ULL
798 0x0000000000180000ULL,
799 0x0808000000000000ULL,
800 0x8000000018000000ULL,
801 0x9800000000000000ULL,
802 -1ULL
804 #endif
806 { "and.sn", TILEPRO_OPC_AND_SN, 0x3, 3, TREG_SN, 1,
807 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
808 #ifndef DISASM_ONLY
810 0x800000007ffc0000ULL,
811 0xfffe000000000000ULL,
812 0ULL,
813 0ULL,
814 0ULL
817 0x0000000008180000ULL,
818 0x0c08000000000000ULL,
819 -1ULL,
820 -1ULL,
821 -1ULL
823 #endif
825 { "andi", TILEPRO_OPC_ANDI, 0xf, 3, TREG_ZERO, 1,
826 { { 7, 8, 0 }, { 9, 10, 1 }, { 11, 12, 2 }, { 13, 14, 3 }, { 0, } },
827 #ifndef DISASM_ONLY
829 0x800000007ff00000ULL,
830 0xfff8000000000000ULL,
831 0x8000000078000000ULL,
832 0xf800000000000000ULL,
833 0ULL
836 0x0000000050100000ULL,
837 0x3020000000000000ULL,
838 0x8000000050000000ULL,
839 0xc000000000000000ULL,
840 -1ULL
842 #endif
844 { "andi.sn", TILEPRO_OPC_ANDI_SN, 0x3, 3, TREG_SN, 1,
845 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
846 #ifndef DISASM_ONLY
848 0x800000007ff00000ULL,
849 0xfff8000000000000ULL,
850 0ULL,
851 0ULL,
852 0ULL
855 0x0000000058100000ULL,
856 0x3420000000000000ULL,
857 -1ULL,
858 -1ULL,
859 -1ULL
861 #endif
863 { "auli", TILEPRO_OPC_AULI, 0x3, 3, TREG_ZERO, 1,
864 { { 7, 8, 4 }, { 9, 10, 5 }, { 0, }, { 0, }, { 0, } },
865 #ifndef DISASM_ONLY
867 0x8000000070000000ULL,
868 0xf800000000000000ULL,
869 0ULL,
870 0ULL,
871 0ULL
874 0x0000000030000000ULL,
875 0x2000000000000000ULL,
876 -1ULL,
877 -1ULL,
878 -1ULL
880 #endif
882 { "avgb_u", TILEPRO_OPC_AVGB_U, 0x1, 3, TREG_ZERO, 1,
883 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
884 #ifndef DISASM_ONLY
886 0x800000007ffc0000ULL,
887 0ULL,
888 0ULL,
889 0ULL,
890 0ULL
893 0x00000000001c0000ULL,
894 -1ULL,
895 -1ULL,
896 -1ULL,
897 -1ULL
899 #endif
901 { "avgb_u.sn", TILEPRO_OPC_AVGB_U_SN, 0x1, 3, TREG_SN, 1,
902 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
903 #ifndef DISASM_ONLY
905 0x800000007ffc0000ULL,
906 0ULL,
907 0ULL,
908 0ULL,
909 0ULL
912 0x00000000081c0000ULL,
913 -1ULL,
914 -1ULL,
915 -1ULL,
916 -1ULL
918 #endif
920 { "avgh", TILEPRO_OPC_AVGH, 0x1, 3, TREG_ZERO, 1,
921 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
922 #ifndef DISASM_ONLY
924 0x800000007ffc0000ULL,
925 0ULL,
926 0ULL,
927 0ULL,
928 0ULL
931 0x0000000000200000ULL,
932 -1ULL,
933 -1ULL,
934 -1ULL,
935 -1ULL
937 #endif
939 { "avgh.sn", TILEPRO_OPC_AVGH_SN, 0x1, 3, TREG_SN, 1,
940 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
941 #ifndef DISASM_ONLY
943 0x800000007ffc0000ULL,
944 0ULL,
945 0ULL,
946 0ULL,
947 0ULL
950 0x0000000008200000ULL,
951 -1ULL,
952 -1ULL,
953 -1ULL,
954 -1ULL
956 #endif
958 { "bbns", TILEPRO_OPC_BBNS, 0x2, 2, TREG_ZERO, 1,
959 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
960 #ifndef DISASM_ONLY
962 0ULL,
963 0xfc00000780000000ULL,
964 0ULL,
965 0ULL,
966 0ULL
969 -1ULL,
970 0x2800000700000000ULL,
971 -1ULL,
972 -1ULL,
973 -1ULL
975 #endif
977 { "bbns.sn", TILEPRO_OPC_BBNS_SN, 0x2, 2, TREG_SN, 1,
978 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
979 #ifndef DISASM_ONLY
981 0ULL,
982 0xfc00000780000000ULL,
983 0ULL,
984 0ULL,
985 0ULL
988 -1ULL,
989 0x2c00000700000000ULL,
990 -1ULL,
991 -1ULL,
992 -1ULL
994 #endif
996 { "bbnst", TILEPRO_OPC_BBNST, 0x2, 2, TREG_ZERO, 1,
997 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
998 #ifndef DISASM_ONLY
1000 0ULL,
1001 0xfc00000780000000ULL,
1002 0ULL,
1003 0ULL,
1004 0ULL
1007 -1ULL,
1008 0x2800000780000000ULL,
1009 -1ULL,
1010 -1ULL,
1011 -1ULL
1013 #endif
1015 { "bbnst.sn", TILEPRO_OPC_BBNST_SN, 0x2, 2, TREG_SN, 1,
1016 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1017 #ifndef DISASM_ONLY
1019 0ULL,
1020 0xfc00000780000000ULL,
1021 0ULL,
1022 0ULL,
1023 0ULL
1026 -1ULL,
1027 0x2c00000780000000ULL,
1028 -1ULL,
1029 -1ULL,
1030 -1ULL
1032 #endif
1034 { "bbs", TILEPRO_OPC_BBS, 0x2, 2, TREG_ZERO, 1,
1035 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1036 #ifndef DISASM_ONLY
1038 0ULL,
1039 0xfc00000780000000ULL,
1040 0ULL,
1041 0ULL,
1042 0ULL
1045 -1ULL,
1046 0x2800000600000000ULL,
1047 -1ULL,
1048 -1ULL,
1049 -1ULL
1051 #endif
1053 { "bbs.sn", TILEPRO_OPC_BBS_SN, 0x2, 2, TREG_SN, 1,
1054 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1055 #ifndef DISASM_ONLY
1057 0ULL,
1058 0xfc00000780000000ULL,
1059 0ULL,
1060 0ULL,
1061 0ULL
1064 -1ULL,
1065 0x2c00000600000000ULL,
1066 -1ULL,
1067 -1ULL,
1068 -1ULL
1070 #endif
1072 { "bbst", TILEPRO_OPC_BBST, 0x2, 2, TREG_ZERO, 1,
1073 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1074 #ifndef DISASM_ONLY
1076 0ULL,
1077 0xfc00000780000000ULL,
1078 0ULL,
1079 0ULL,
1080 0ULL
1083 -1ULL,
1084 0x2800000680000000ULL,
1085 -1ULL,
1086 -1ULL,
1087 -1ULL
1089 #endif
1091 { "bbst.sn", TILEPRO_OPC_BBST_SN, 0x2, 2, TREG_SN, 1,
1092 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1093 #ifndef DISASM_ONLY
1095 0ULL,
1096 0xfc00000780000000ULL,
1097 0ULL,
1098 0ULL,
1099 0ULL
1102 -1ULL,
1103 0x2c00000680000000ULL,
1104 -1ULL,
1105 -1ULL,
1106 -1ULL
1108 #endif
1110 { "bgez", TILEPRO_OPC_BGEZ, 0x2, 2, TREG_ZERO, 1,
1111 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1112 #ifndef DISASM_ONLY
1114 0ULL,
1115 0xfc00000780000000ULL,
1116 0ULL,
1117 0ULL,
1118 0ULL
1121 -1ULL,
1122 0x2800000300000000ULL,
1123 -1ULL,
1124 -1ULL,
1125 -1ULL
1127 #endif
1129 { "bgez.sn", TILEPRO_OPC_BGEZ_SN, 0x2, 2, TREG_SN, 1,
1130 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1131 #ifndef DISASM_ONLY
1133 0ULL,
1134 0xfc00000780000000ULL,
1135 0ULL,
1136 0ULL,
1137 0ULL
1140 -1ULL,
1141 0x2c00000300000000ULL,
1142 -1ULL,
1143 -1ULL,
1144 -1ULL
1146 #endif
1148 { "bgezt", TILEPRO_OPC_BGEZT, 0x2, 2, TREG_ZERO, 1,
1149 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1150 #ifndef DISASM_ONLY
1152 0ULL,
1153 0xfc00000780000000ULL,
1154 0ULL,
1155 0ULL,
1156 0ULL
1159 -1ULL,
1160 0x2800000380000000ULL,
1161 -1ULL,
1162 -1ULL,
1163 -1ULL
1165 #endif
1167 { "bgezt.sn", TILEPRO_OPC_BGEZT_SN, 0x2, 2, TREG_SN, 1,
1168 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1169 #ifndef DISASM_ONLY
1171 0ULL,
1172 0xfc00000780000000ULL,
1173 0ULL,
1174 0ULL,
1175 0ULL
1178 -1ULL,
1179 0x2c00000380000000ULL,
1180 -1ULL,
1181 -1ULL,
1182 -1ULL
1184 #endif
1186 { "bgz", TILEPRO_OPC_BGZ, 0x2, 2, TREG_ZERO, 1,
1187 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1188 #ifndef DISASM_ONLY
1190 0ULL,
1191 0xfc00000780000000ULL,
1192 0ULL,
1193 0ULL,
1194 0ULL
1197 -1ULL,
1198 0x2800000200000000ULL,
1199 -1ULL,
1200 -1ULL,
1201 -1ULL
1203 #endif
1205 { "bgz.sn", TILEPRO_OPC_BGZ_SN, 0x2, 2, TREG_SN, 1,
1206 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1207 #ifndef DISASM_ONLY
1209 0ULL,
1210 0xfc00000780000000ULL,
1211 0ULL,
1212 0ULL,
1213 0ULL
1216 -1ULL,
1217 0x2c00000200000000ULL,
1218 -1ULL,
1219 -1ULL,
1220 -1ULL
1222 #endif
1224 { "bgzt", TILEPRO_OPC_BGZT, 0x2, 2, TREG_ZERO, 1,
1225 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1226 #ifndef DISASM_ONLY
1228 0ULL,
1229 0xfc00000780000000ULL,
1230 0ULL,
1231 0ULL,
1232 0ULL
1235 -1ULL,
1236 0x2800000280000000ULL,
1237 -1ULL,
1238 -1ULL,
1239 -1ULL
1241 #endif
1243 { "bgzt.sn", TILEPRO_OPC_BGZT_SN, 0x2, 2, TREG_SN, 1,
1244 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1245 #ifndef DISASM_ONLY
1247 0ULL,
1248 0xfc00000780000000ULL,
1249 0ULL,
1250 0ULL,
1251 0ULL
1254 -1ULL,
1255 0x2c00000280000000ULL,
1256 -1ULL,
1257 -1ULL,
1258 -1ULL
1260 #endif
1262 { "bitx", TILEPRO_OPC_BITX, 0x5, 2, TREG_ZERO, 1,
1263 { { 7, 8 }, { 0, }, { 11, 12 }, { 0, }, { 0, } },
1264 #ifndef DISASM_ONLY
1266 0x800000007ffff000ULL,
1267 0ULL,
1268 0x80000000780ff000ULL,
1269 0ULL,
1270 0ULL
1273 0x0000000070161000ULL,
1274 -1ULL,
1275 0x80000000680a1000ULL,
1276 -1ULL,
1277 -1ULL
1279 #endif
1281 { "bitx.sn", TILEPRO_OPC_BITX_SN, 0x1, 2, TREG_SN, 1,
1282 { { 7, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
1283 #ifndef DISASM_ONLY
1285 0x800000007ffff000ULL,
1286 0ULL,
1287 0ULL,
1288 0ULL,
1289 0ULL
1292 0x0000000078161000ULL,
1293 -1ULL,
1294 -1ULL,
1295 -1ULL,
1296 -1ULL
1298 #endif
1300 { "blez", TILEPRO_OPC_BLEZ, 0x2, 2, TREG_ZERO, 1,
1301 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1302 #ifndef DISASM_ONLY
1304 0ULL,
1305 0xfc00000780000000ULL,
1306 0ULL,
1307 0ULL,
1308 0ULL
1311 -1ULL,
1312 0x2800000500000000ULL,
1313 -1ULL,
1314 -1ULL,
1315 -1ULL
1317 #endif
1319 { "blez.sn", TILEPRO_OPC_BLEZ_SN, 0x2, 2, TREG_SN, 1,
1320 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1321 #ifndef DISASM_ONLY
1323 0ULL,
1324 0xfc00000780000000ULL,
1325 0ULL,
1326 0ULL,
1327 0ULL
1330 -1ULL,
1331 0x2c00000500000000ULL,
1332 -1ULL,
1333 -1ULL,
1334 -1ULL
1336 #endif
1338 { "blezt", TILEPRO_OPC_BLEZT, 0x2, 2, TREG_ZERO, 1,
1339 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1340 #ifndef DISASM_ONLY
1342 0ULL,
1343 0xfc00000780000000ULL,
1344 0ULL,
1345 0ULL,
1346 0ULL
1349 -1ULL,
1350 0x2800000580000000ULL,
1351 -1ULL,
1352 -1ULL,
1353 -1ULL
1355 #endif
1357 { "blezt.sn", TILEPRO_OPC_BLEZT_SN, 0x2, 2, TREG_SN, 1,
1358 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1359 #ifndef DISASM_ONLY
1361 0ULL,
1362 0xfc00000780000000ULL,
1363 0ULL,
1364 0ULL,
1365 0ULL
1368 -1ULL,
1369 0x2c00000580000000ULL,
1370 -1ULL,
1371 -1ULL,
1372 -1ULL
1374 #endif
1376 { "blz", TILEPRO_OPC_BLZ, 0x2, 2, TREG_ZERO, 1,
1377 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1378 #ifndef DISASM_ONLY
1380 0ULL,
1381 0xfc00000780000000ULL,
1382 0ULL,
1383 0ULL,
1384 0ULL
1387 -1ULL,
1388 0x2800000400000000ULL,
1389 -1ULL,
1390 -1ULL,
1391 -1ULL
1393 #endif
1395 { "blz.sn", TILEPRO_OPC_BLZ_SN, 0x2, 2, TREG_SN, 1,
1396 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1397 #ifndef DISASM_ONLY
1399 0ULL,
1400 0xfc00000780000000ULL,
1401 0ULL,
1402 0ULL,
1403 0ULL
1406 -1ULL,
1407 0x2c00000400000000ULL,
1408 -1ULL,
1409 -1ULL,
1410 -1ULL
1412 #endif
1414 { "blzt", TILEPRO_OPC_BLZT, 0x2, 2, TREG_ZERO, 1,
1415 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1416 #ifndef DISASM_ONLY
1418 0ULL,
1419 0xfc00000780000000ULL,
1420 0ULL,
1421 0ULL,
1422 0ULL
1425 -1ULL,
1426 0x2800000480000000ULL,
1427 -1ULL,
1428 -1ULL,
1429 -1ULL
1431 #endif
1433 { "blzt.sn", TILEPRO_OPC_BLZT_SN, 0x2, 2, TREG_SN, 1,
1434 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1435 #ifndef DISASM_ONLY
1437 0ULL,
1438 0xfc00000780000000ULL,
1439 0ULL,
1440 0ULL,
1441 0ULL
1444 -1ULL,
1445 0x2c00000480000000ULL,
1446 -1ULL,
1447 -1ULL,
1448 -1ULL
1450 #endif
1452 { "bnz", TILEPRO_OPC_BNZ, 0x2, 2, TREG_ZERO, 1,
1453 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1454 #ifndef DISASM_ONLY
1456 0ULL,
1457 0xfc00000780000000ULL,
1458 0ULL,
1459 0ULL,
1460 0ULL
1463 -1ULL,
1464 0x2800000100000000ULL,
1465 -1ULL,
1466 -1ULL,
1467 -1ULL
1469 #endif
1471 { "bnz.sn", TILEPRO_OPC_BNZ_SN, 0x2, 2, TREG_SN, 1,
1472 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1473 #ifndef DISASM_ONLY
1475 0ULL,
1476 0xfc00000780000000ULL,
1477 0ULL,
1478 0ULL,
1479 0ULL
1482 -1ULL,
1483 0x2c00000100000000ULL,
1484 -1ULL,
1485 -1ULL,
1486 -1ULL
1488 #endif
1490 { "bnzt", TILEPRO_OPC_BNZT, 0x2, 2, TREG_ZERO, 1,
1491 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1492 #ifndef DISASM_ONLY
1494 0ULL,
1495 0xfc00000780000000ULL,
1496 0ULL,
1497 0ULL,
1498 0ULL
1501 -1ULL,
1502 0x2800000180000000ULL,
1503 -1ULL,
1504 -1ULL,
1505 -1ULL
1507 #endif
1509 { "bnzt.sn", TILEPRO_OPC_BNZT_SN, 0x2, 2, TREG_SN, 1,
1510 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1511 #ifndef DISASM_ONLY
1513 0ULL,
1514 0xfc00000780000000ULL,
1515 0ULL,
1516 0ULL,
1517 0ULL
1520 -1ULL,
1521 0x2c00000180000000ULL,
1522 -1ULL,
1523 -1ULL,
1524 -1ULL
1526 #endif
1528 { "bytex", TILEPRO_OPC_BYTEX, 0x5, 2, TREG_ZERO, 1,
1529 { { 7, 8 }, { 0, }, { 11, 12 }, { 0, }, { 0, } },
1530 #ifndef DISASM_ONLY
1532 0x800000007ffff000ULL,
1533 0ULL,
1534 0x80000000780ff000ULL,
1535 0ULL,
1536 0ULL
1539 0x0000000070162000ULL,
1540 -1ULL,
1541 0x80000000680a2000ULL,
1542 -1ULL,
1543 -1ULL
1545 #endif
1547 { "bytex.sn", TILEPRO_OPC_BYTEX_SN, 0x1, 2, TREG_SN, 1,
1548 { { 7, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
1549 #ifndef DISASM_ONLY
1551 0x800000007ffff000ULL,
1552 0ULL,
1553 0ULL,
1554 0ULL,
1555 0ULL
1558 0x0000000078162000ULL,
1559 -1ULL,
1560 -1ULL,
1561 -1ULL,
1562 -1ULL
1564 #endif
1566 { "bz", TILEPRO_OPC_BZ, 0x2, 2, TREG_ZERO, 1,
1567 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1568 #ifndef DISASM_ONLY
1570 0ULL,
1571 0xfc00000780000000ULL,
1572 0ULL,
1573 0ULL,
1574 0ULL
1577 -1ULL,
1578 0x2800000000000000ULL,
1579 -1ULL,
1580 -1ULL,
1581 -1ULL
1583 #endif
1585 { "bz.sn", TILEPRO_OPC_BZ_SN, 0x2, 2, TREG_SN, 1,
1586 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1587 #ifndef DISASM_ONLY
1589 0ULL,
1590 0xfc00000780000000ULL,
1591 0ULL,
1592 0ULL,
1593 0ULL
1596 -1ULL,
1597 0x2c00000000000000ULL,
1598 -1ULL,
1599 -1ULL,
1600 -1ULL
1602 #endif
1604 { "bzt", TILEPRO_OPC_BZT, 0x2, 2, TREG_ZERO, 1,
1605 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1606 #ifndef DISASM_ONLY
1608 0ULL,
1609 0xfc00000780000000ULL,
1610 0ULL,
1611 0ULL,
1612 0ULL
1615 -1ULL,
1616 0x2800000080000000ULL,
1617 -1ULL,
1618 -1ULL,
1619 -1ULL
1621 #endif
1623 { "bzt.sn", TILEPRO_OPC_BZT_SN, 0x2, 2, TREG_SN, 1,
1624 { { 0, }, { 10, 20 }, { 0, }, { 0, }, { 0, } },
1625 #ifndef DISASM_ONLY
1627 0ULL,
1628 0xfc00000780000000ULL,
1629 0ULL,
1630 0ULL,
1631 0ULL
1634 -1ULL,
1635 0x2c00000080000000ULL,
1636 -1ULL,
1637 -1ULL,
1638 -1ULL
1640 #endif
1642 { "clz", TILEPRO_OPC_CLZ, 0x5, 2, TREG_ZERO, 1,
1643 { { 7, 8 }, { 0, }, { 11, 12 }, { 0, }, { 0, } },
1644 #ifndef DISASM_ONLY
1646 0x800000007ffff000ULL,
1647 0ULL,
1648 0x80000000780ff000ULL,
1649 0ULL,
1650 0ULL
1653 0x0000000070163000ULL,
1654 -1ULL,
1655 0x80000000680a3000ULL,
1656 -1ULL,
1657 -1ULL
1659 #endif
1661 { "clz.sn", TILEPRO_OPC_CLZ_SN, 0x1, 2, TREG_SN, 1,
1662 { { 7, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
1663 #ifndef DISASM_ONLY
1665 0x800000007ffff000ULL,
1666 0ULL,
1667 0ULL,
1668 0ULL,
1669 0ULL
1672 0x0000000078163000ULL,
1673 -1ULL,
1674 -1ULL,
1675 -1ULL,
1676 -1ULL
1678 #endif
1680 { "crc32_32", TILEPRO_OPC_CRC32_32, 0x1, 3, TREG_ZERO, 1,
1681 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
1682 #ifndef DISASM_ONLY
1684 0x800000007ffc0000ULL,
1685 0ULL,
1686 0ULL,
1687 0ULL,
1688 0ULL
1691 0x0000000000240000ULL,
1692 -1ULL,
1693 -1ULL,
1694 -1ULL,
1695 -1ULL
1697 #endif
1699 { "crc32_32.sn", TILEPRO_OPC_CRC32_32_SN, 0x1, 3, TREG_SN, 1,
1700 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
1701 #ifndef DISASM_ONLY
1703 0x800000007ffc0000ULL,
1704 0ULL,
1705 0ULL,
1706 0ULL,
1707 0ULL
1710 0x0000000008240000ULL,
1711 -1ULL,
1712 -1ULL,
1713 -1ULL,
1714 -1ULL
1716 #endif
1718 { "crc32_8", TILEPRO_OPC_CRC32_8, 0x1, 3, TREG_ZERO, 1,
1719 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
1720 #ifndef DISASM_ONLY
1722 0x800000007ffc0000ULL,
1723 0ULL,
1724 0ULL,
1725 0ULL,
1726 0ULL
1729 0x0000000000280000ULL,
1730 -1ULL,
1731 -1ULL,
1732 -1ULL,
1733 -1ULL
1735 #endif
1737 { "crc32_8.sn", TILEPRO_OPC_CRC32_8_SN, 0x1, 3, TREG_SN, 1,
1738 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
1739 #ifndef DISASM_ONLY
1741 0x800000007ffc0000ULL,
1742 0ULL,
1743 0ULL,
1744 0ULL,
1745 0ULL
1748 0x0000000008280000ULL,
1749 -1ULL,
1750 -1ULL,
1751 -1ULL,
1752 -1ULL
1754 #endif
1756 { "ctz", TILEPRO_OPC_CTZ, 0x5, 2, TREG_ZERO, 1,
1757 { { 7, 8 }, { 0, }, { 11, 12 }, { 0, }, { 0, } },
1758 #ifndef DISASM_ONLY
1760 0x800000007ffff000ULL,
1761 0ULL,
1762 0x80000000780ff000ULL,
1763 0ULL,
1764 0ULL
1767 0x0000000070164000ULL,
1768 -1ULL,
1769 0x80000000680a4000ULL,
1770 -1ULL,
1771 -1ULL
1773 #endif
1775 { "ctz.sn", TILEPRO_OPC_CTZ_SN, 0x1, 2, TREG_SN, 1,
1776 { { 7, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
1777 #ifndef DISASM_ONLY
1779 0x800000007ffff000ULL,
1780 0ULL,
1781 0ULL,
1782 0ULL,
1783 0ULL
1786 0x0000000078164000ULL,
1787 -1ULL,
1788 -1ULL,
1789 -1ULL,
1790 -1ULL
1792 #endif
1794 { "drain", TILEPRO_OPC_DRAIN, 0x2, 0, TREG_ZERO, 0,
1795 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
1796 #ifndef DISASM_ONLY
1798 0ULL,
1799 0xfbfff80000000000ULL,
1800 0ULL,
1801 0ULL,
1802 0ULL
1805 -1ULL,
1806 0x400b080000000000ULL,
1807 -1ULL,
1808 -1ULL,
1809 -1ULL
1811 #endif
1813 { "dtlbpr", TILEPRO_OPC_DTLBPR, 0x2, 1, TREG_ZERO, 1,
1814 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
1815 #ifndef DISASM_ONLY
1817 0ULL,
1818 0xfbfff80000000000ULL,
1819 0ULL,
1820 0ULL,
1821 0ULL
1824 -1ULL,
1825 0x400b100000000000ULL,
1826 -1ULL,
1827 -1ULL,
1828 -1ULL
1830 #endif
1832 { "dword_align", TILEPRO_OPC_DWORD_ALIGN, 0x1, 3, TREG_ZERO, 1,
1833 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
1834 #ifndef DISASM_ONLY
1836 0x800000007ffc0000ULL,
1837 0ULL,
1838 0ULL,
1839 0ULL,
1840 0ULL
1843 0x00000000017c0000ULL,
1844 -1ULL,
1845 -1ULL,
1846 -1ULL,
1847 -1ULL
1849 #endif
1851 { "dword_align.sn", TILEPRO_OPC_DWORD_ALIGN_SN, 0x1, 3, TREG_SN, 1,
1852 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
1853 #ifndef DISASM_ONLY
1855 0x800000007ffc0000ULL,
1856 0ULL,
1857 0ULL,
1858 0ULL,
1859 0ULL
1862 0x00000000097c0000ULL,
1863 -1ULL,
1864 -1ULL,
1865 -1ULL,
1866 -1ULL
1868 #endif
1870 { "finv", TILEPRO_OPC_FINV, 0x2, 1, TREG_ZERO, 1,
1871 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
1872 #ifndef DISASM_ONLY
1874 0ULL,
1875 0xfbfff80000000000ULL,
1876 0ULL,
1877 0ULL,
1878 0ULL
1881 -1ULL,
1882 0x400b180000000000ULL,
1883 -1ULL,
1884 -1ULL,
1885 -1ULL
1887 #endif
1889 { "flush", TILEPRO_OPC_FLUSH, 0x2, 1, TREG_ZERO, 1,
1890 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
1891 #ifndef DISASM_ONLY
1893 0ULL,
1894 0xfbfff80000000000ULL,
1895 0ULL,
1896 0ULL,
1897 0ULL
1900 -1ULL,
1901 0x400b200000000000ULL,
1902 -1ULL,
1903 -1ULL,
1904 -1ULL
1906 #endif
1908 { "fnop", TILEPRO_OPC_FNOP, 0xf, 0, TREG_ZERO, 1,
1909 { { }, { }, { }, { }, { 0, } },
1910 #ifndef DISASM_ONLY
1912 0x8000000077fff000ULL,
1913 0xfbfff80000000000ULL,
1914 0x80000000780ff000ULL,
1915 0xf807f80000000000ULL,
1916 0ULL
1919 0x0000000070165000ULL,
1920 0x400b280000000000ULL,
1921 0x80000000680a5000ULL,
1922 0xd805080000000000ULL,
1923 -1ULL
1925 #endif
1927 { "icoh", TILEPRO_OPC_ICOH, 0x2, 1, TREG_ZERO, 1,
1928 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
1929 #ifndef DISASM_ONLY
1931 0ULL,
1932 0xfbfff80000000000ULL,
1933 0ULL,
1934 0ULL,
1935 0ULL
1938 -1ULL,
1939 0x400b300000000000ULL,
1940 -1ULL,
1941 -1ULL,
1942 -1ULL
1944 #endif
1946 { "ill", TILEPRO_OPC_ILL, 0xa, 0, TREG_ZERO, 1,
1947 { { 0, }, { }, { 0, }, { }, { 0, } },
1948 #ifndef DISASM_ONLY
1950 0ULL,
1951 0xfbfff80000000000ULL,
1952 0ULL,
1953 0xf807f80000000000ULL,
1954 0ULL
1957 -1ULL,
1958 0x400b380000000000ULL,
1959 -1ULL,
1960 0xd805100000000000ULL,
1961 -1ULL
1963 #endif
1965 { "inthb", TILEPRO_OPC_INTHB, 0x3, 3, TREG_ZERO, 1,
1966 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
1967 #ifndef DISASM_ONLY
1969 0x800000007ffc0000ULL,
1970 0xfffe000000000000ULL,
1971 0ULL,
1972 0ULL,
1973 0ULL
1976 0x00000000002c0000ULL,
1977 0x080a000000000000ULL,
1978 -1ULL,
1979 -1ULL,
1980 -1ULL
1982 #endif
1984 { "inthb.sn", TILEPRO_OPC_INTHB_SN, 0x3, 3, TREG_SN, 1,
1985 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
1986 #ifndef DISASM_ONLY
1988 0x800000007ffc0000ULL,
1989 0xfffe000000000000ULL,
1990 0ULL,
1991 0ULL,
1992 0ULL
1995 0x00000000082c0000ULL,
1996 0x0c0a000000000000ULL,
1997 -1ULL,
1998 -1ULL,
1999 -1ULL
2001 #endif
2003 { "inthh", TILEPRO_OPC_INTHH, 0x3, 3, TREG_ZERO, 1,
2004 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2005 #ifndef DISASM_ONLY
2007 0x800000007ffc0000ULL,
2008 0xfffe000000000000ULL,
2009 0ULL,
2010 0ULL,
2011 0ULL
2014 0x0000000000300000ULL,
2015 0x080c000000000000ULL,
2016 -1ULL,
2017 -1ULL,
2018 -1ULL
2020 #endif
2022 { "inthh.sn", TILEPRO_OPC_INTHH_SN, 0x3, 3, TREG_SN, 1,
2023 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2024 #ifndef DISASM_ONLY
2026 0x800000007ffc0000ULL,
2027 0xfffe000000000000ULL,
2028 0ULL,
2029 0ULL,
2030 0ULL
2033 0x0000000008300000ULL,
2034 0x0c0c000000000000ULL,
2035 -1ULL,
2036 -1ULL,
2037 -1ULL
2039 #endif
2041 { "intlb", TILEPRO_OPC_INTLB, 0x3, 3, TREG_ZERO, 1,
2042 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2043 #ifndef DISASM_ONLY
2045 0x800000007ffc0000ULL,
2046 0xfffe000000000000ULL,
2047 0ULL,
2048 0ULL,
2049 0ULL
2052 0x0000000000340000ULL,
2053 0x080e000000000000ULL,
2054 -1ULL,
2055 -1ULL,
2056 -1ULL
2058 #endif
2060 { "intlb.sn", TILEPRO_OPC_INTLB_SN, 0x3, 3, TREG_SN, 1,
2061 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2062 #ifndef DISASM_ONLY
2064 0x800000007ffc0000ULL,
2065 0xfffe000000000000ULL,
2066 0ULL,
2067 0ULL,
2068 0ULL
2071 0x0000000008340000ULL,
2072 0x0c0e000000000000ULL,
2073 -1ULL,
2074 -1ULL,
2075 -1ULL
2077 #endif
2079 { "intlh", TILEPRO_OPC_INTLH, 0x3, 3, TREG_ZERO, 1,
2080 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2081 #ifndef DISASM_ONLY
2083 0x800000007ffc0000ULL,
2084 0xfffe000000000000ULL,
2085 0ULL,
2086 0ULL,
2087 0ULL
2090 0x0000000000380000ULL,
2091 0x0810000000000000ULL,
2092 -1ULL,
2093 -1ULL,
2094 -1ULL
2096 #endif
2098 { "intlh.sn", TILEPRO_OPC_INTLH_SN, 0x3, 3, TREG_SN, 1,
2099 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2100 #ifndef DISASM_ONLY
2102 0x800000007ffc0000ULL,
2103 0xfffe000000000000ULL,
2104 0ULL,
2105 0ULL,
2106 0ULL
2109 0x0000000008380000ULL,
2110 0x0c10000000000000ULL,
2111 -1ULL,
2112 -1ULL,
2113 -1ULL
2115 #endif
2117 { "inv", TILEPRO_OPC_INV, 0x2, 1, TREG_ZERO, 1,
2118 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
2119 #ifndef DISASM_ONLY
2121 0ULL,
2122 0xfbfff80000000000ULL,
2123 0ULL,
2124 0ULL,
2125 0ULL
2128 -1ULL,
2129 0x400b400000000000ULL,
2130 -1ULL,
2131 -1ULL,
2132 -1ULL
2134 #endif
2136 { "iret", TILEPRO_OPC_IRET, 0x2, 0, TREG_ZERO, 1,
2137 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
2138 #ifndef DISASM_ONLY
2140 0ULL,
2141 0xfbfff80000000000ULL,
2142 0ULL,
2143 0ULL,
2144 0ULL
2147 -1ULL,
2148 0x400b480000000000ULL,
2149 -1ULL,
2150 -1ULL,
2151 -1ULL
2153 #endif
2155 { "jalb", TILEPRO_OPC_JALB, 0x2, 1, TREG_LR, 1,
2156 { { 0, }, { 22 }, { 0, }, { 0, }, { 0, } },
2157 #ifndef DISASM_ONLY
2159 0ULL,
2160 0xf800000000000000ULL,
2161 0ULL,
2162 0ULL,
2163 0ULL
2166 -1ULL,
2167 0x6800000000000000ULL,
2168 -1ULL,
2169 -1ULL,
2170 -1ULL
2172 #endif
2174 { "jalf", TILEPRO_OPC_JALF, 0x2, 1, TREG_LR, 1,
2175 { { 0, }, { 22 }, { 0, }, { 0, }, { 0, } },
2176 #ifndef DISASM_ONLY
2178 0ULL,
2179 0xf800000000000000ULL,
2180 0ULL,
2181 0ULL,
2182 0ULL
2185 -1ULL,
2186 0x6000000000000000ULL,
2187 -1ULL,
2188 -1ULL,
2189 -1ULL
2191 #endif
2193 { "jalr", TILEPRO_OPC_JALR, 0x2, 1, TREG_LR, 1,
2194 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
2195 #ifndef DISASM_ONLY
2197 0ULL,
2198 0xfbfe000000000000ULL,
2199 0ULL,
2200 0ULL,
2201 0ULL
2204 -1ULL,
2205 0x0814000000000000ULL,
2206 -1ULL,
2207 -1ULL,
2208 -1ULL
2210 #endif
2212 { "jalrp", TILEPRO_OPC_JALRP, 0x2, 1, TREG_LR, 1,
2213 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
2214 #ifndef DISASM_ONLY
2216 0ULL,
2217 0xfbfe000000000000ULL,
2218 0ULL,
2219 0ULL,
2220 0ULL
2223 -1ULL,
2224 0x0812000000000000ULL,
2225 -1ULL,
2226 -1ULL,
2227 -1ULL
2229 #endif
2231 { "jb", TILEPRO_OPC_JB, 0x2, 1, TREG_ZERO, 1,
2232 { { 0, }, { 22 }, { 0, }, { 0, }, { 0, } },
2233 #ifndef DISASM_ONLY
2235 0ULL,
2236 0xf800000000000000ULL,
2237 0ULL,
2238 0ULL,
2239 0ULL
2242 -1ULL,
2243 0x5800000000000000ULL,
2244 -1ULL,
2245 -1ULL,
2246 -1ULL
2248 #endif
2250 { "jf", TILEPRO_OPC_JF, 0x2, 1, TREG_ZERO, 1,
2251 { { 0, }, { 22 }, { 0, }, { 0, }, { 0, } },
2252 #ifndef DISASM_ONLY
2254 0ULL,
2255 0xf800000000000000ULL,
2256 0ULL,
2257 0ULL,
2258 0ULL
2261 -1ULL,
2262 0x5000000000000000ULL,
2263 -1ULL,
2264 -1ULL,
2265 -1ULL
2267 #endif
2269 { "jr", TILEPRO_OPC_JR, 0x2, 1, TREG_ZERO, 1,
2270 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
2271 #ifndef DISASM_ONLY
2273 0ULL,
2274 0xfbfe000000000000ULL,
2275 0ULL,
2276 0ULL,
2277 0ULL
2280 -1ULL,
2281 0x0818000000000000ULL,
2282 -1ULL,
2283 -1ULL,
2284 -1ULL
2286 #endif
2288 { "jrp", TILEPRO_OPC_JRP, 0x2, 1, TREG_ZERO, 1,
2289 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
2290 #ifndef DISASM_ONLY
2292 0ULL,
2293 0xfbfe000000000000ULL,
2294 0ULL,
2295 0ULL,
2296 0ULL
2299 -1ULL,
2300 0x0816000000000000ULL,
2301 -1ULL,
2302 -1ULL,
2303 -1ULL
2305 #endif
2307 { "lb", TILEPRO_OPC_LB, 0x12, 2, TREG_ZERO, 1,
2308 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 23, 15 } },
2309 #ifndef DISASM_ONLY
2311 0ULL,
2312 0xfffff80000000000ULL,
2313 0ULL,
2314 0ULL,
2315 0x8700000000000000ULL
2318 -1ULL,
2319 0x400b500000000000ULL,
2320 -1ULL,
2321 -1ULL,
2322 0x8000000000000000ULL
2324 #endif
2326 { "lb.sn", TILEPRO_OPC_LB_SN, 0x2, 2, TREG_SN, 1,
2327 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2328 #ifndef DISASM_ONLY
2330 0ULL,
2331 0xfffff80000000000ULL,
2332 0ULL,
2333 0ULL,
2334 0ULL
2337 -1ULL,
2338 0x440b500000000000ULL,
2339 -1ULL,
2340 -1ULL,
2341 -1ULL
2343 #endif
2345 { "lb_u", TILEPRO_OPC_LB_U, 0x12, 2, TREG_ZERO, 1,
2346 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 23, 15 } },
2347 #ifndef DISASM_ONLY
2349 0ULL,
2350 0xfffff80000000000ULL,
2351 0ULL,
2352 0ULL,
2353 0x8700000000000000ULL
2356 -1ULL,
2357 0x400b580000000000ULL,
2358 -1ULL,
2359 -1ULL,
2360 0x8100000000000000ULL
2362 #endif
2364 { "lb_u.sn", TILEPRO_OPC_LB_U_SN, 0x2, 2, TREG_SN, 1,
2365 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2366 #ifndef DISASM_ONLY
2368 0ULL,
2369 0xfffff80000000000ULL,
2370 0ULL,
2371 0ULL,
2372 0ULL
2375 -1ULL,
2376 0x440b580000000000ULL,
2377 -1ULL,
2378 -1ULL,
2379 -1ULL
2381 #endif
2383 { "lbadd", TILEPRO_OPC_LBADD, 0x2, 3, TREG_ZERO, 1,
2384 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2385 #ifndef DISASM_ONLY
2387 0ULL,
2388 0xfff8000000000000ULL,
2389 0ULL,
2390 0ULL,
2391 0ULL
2394 -1ULL,
2395 0x30b0000000000000ULL,
2396 -1ULL,
2397 -1ULL,
2398 -1ULL
2400 #endif
2402 { "lbadd.sn", TILEPRO_OPC_LBADD_SN, 0x2, 3, TREG_SN, 1,
2403 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2404 #ifndef DISASM_ONLY
2406 0ULL,
2407 0xfff8000000000000ULL,
2408 0ULL,
2409 0ULL,
2410 0ULL
2413 -1ULL,
2414 0x34b0000000000000ULL,
2415 -1ULL,
2416 -1ULL,
2417 -1ULL
2419 #endif
2421 { "lbadd_u", TILEPRO_OPC_LBADD_U, 0x2, 3, TREG_ZERO, 1,
2422 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2423 #ifndef DISASM_ONLY
2425 0ULL,
2426 0xfff8000000000000ULL,
2427 0ULL,
2428 0ULL,
2429 0ULL
2432 -1ULL,
2433 0x30b8000000000000ULL,
2434 -1ULL,
2435 -1ULL,
2436 -1ULL
2438 #endif
2440 { "lbadd_u.sn", TILEPRO_OPC_LBADD_U_SN, 0x2, 3, TREG_SN, 1,
2441 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2442 #ifndef DISASM_ONLY
2444 0ULL,
2445 0xfff8000000000000ULL,
2446 0ULL,
2447 0ULL,
2448 0ULL
2451 -1ULL,
2452 0x34b8000000000000ULL,
2453 -1ULL,
2454 -1ULL,
2455 -1ULL
2457 #endif
2459 { "lh", TILEPRO_OPC_LH, 0x12, 2, TREG_ZERO, 1,
2460 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 23, 15 } },
2461 #ifndef DISASM_ONLY
2463 0ULL,
2464 0xfffff80000000000ULL,
2465 0ULL,
2466 0ULL,
2467 0x8700000000000000ULL
2470 -1ULL,
2471 0x400b600000000000ULL,
2472 -1ULL,
2473 -1ULL,
2474 0x8200000000000000ULL
2476 #endif
2478 { "lh.sn", TILEPRO_OPC_LH_SN, 0x2, 2, TREG_SN, 1,
2479 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2480 #ifndef DISASM_ONLY
2482 0ULL,
2483 0xfffff80000000000ULL,
2484 0ULL,
2485 0ULL,
2486 0ULL
2489 -1ULL,
2490 0x440b600000000000ULL,
2491 -1ULL,
2492 -1ULL,
2493 -1ULL
2495 #endif
2497 { "lh_u", TILEPRO_OPC_LH_U, 0x12, 2, TREG_ZERO, 1,
2498 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 23, 15 } },
2499 #ifndef DISASM_ONLY
2501 0ULL,
2502 0xfffff80000000000ULL,
2503 0ULL,
2504 0ULL,
2505 0x8700000000000000ULL
2508 -1ULL,
2509 0x400b680000000000ULL,
2510 -1ULL,
2511 -1ULL,
2512 0x8300000000000000ULL
2514 #endif
2516 { "lh_u.sn", TILEPRO_OPC_LH_U_SN, 0x2, 2, TREG_SN, 1,
2517 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2518 #ifndef DISASM_ONLY
2520 0ULL,
2521 0xfffff80000000000ULL,
2522 0ULL,
2523 0ULL,
2524 0ULL
2527 -1ULL,
2528 0x440b680000000000ULL,
2529 -1ULL,
2530 -1ULL,
2531 -1ULL
2533 #endif
2535 { "lhadd", TILEPRO_OPC_LHADD, 0x2, 3, TREG_ZERO, 1,
2536 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2537 #ifndef DISASM_ONLY
2539 0ULL,
2540 0xfff8000000000000ULL,
2541 0ULL,
2542 0ULL,
2543 0ULL
2546 -1ULL,
2547 0x30c0000000000000ULL,
2548 -1ULL,
2549 -1ULL,
2550 -1ULL
2552 #endif
2554 { "lhadd.sn", TILEPRO_OPC_LHADD_SN, 0x2, 3, TREG_SN, 1,
2555 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2556 #ifndef DISASM_ONLY
2558 0ULL,
2559 0xfff8000000000000ULL,
2560 0ULL,
2561 0ULL,
2562 0ULL
2565 -1ULL,
2566 0x34c0000000000000ULL,
2567 -1ULL,
2568 -1ULL,
2569 -1ULL
2571 #endif
2573 { "lhadd_u", TILEPRO_OPC_LHADD_U, 0x2, 3, TREG_ZERO, 1,
2574 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2575 #ifndef DISASM_ONLY
2577 0ULL,
2578 0xfff8000000000000ULL,
2579 0ULL,
2580 0ULL,
2581 0ULL
2584 -1ULL,
2585 0x30c8000000000000ULL,
2586 -1ULL,
2587 -1ULL,
2588 -1ULL
2590 #endif
2592 { "lhadd_u.sn", TILEPRO_OPC_LHADD_U_SN, 0x2, 3, TREG_SN, 1,
2593 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2594 #ifndef DISASM_ONLY
2596 0ULL,
2597 0xfff8000000000000ULL,
2598 0ULL,
2599 0ULL,
2600 0ULL
2603 -1ULL,
2604 0x34c8000000000000ULL,
2605 -1ULL,
2606 -1ULL,
2607 -1ULL
2609 #endif
2611 { "lnk", TILEPRO_OPC_LNK, 0x2, 1, TREG_ZERO, 1,
2612 { { 0, }, { 9 }, { 0, }, { 0, }, { 0, } },
2613 #ifndef DISASM_ONLY
2615 0ULL,
2616 0xfffe000000000000ULL,
2617 0ULL,
2618 0ULL,
2619 0ULL
2622 -1ULL,
2623 0x081a000000000000ULL,
2624 -1ULL,
2625 -1ULL,
2626 -1ULL
2628 #endif
2630 { "lnk.sn", TILEPRO_OPC_LNK_SN, 0x2, 1, TREG_SN, 1,
2631 { { 0, }, { 9 }, { 0, }, { 0, }, { 0, } },
2632 #ifndef DISASM_ONLY
2634 0ULL,
2635 0xfffe000000000000ULL,
2636 0ULL,
2637 0ULL,
2638 0ULL
2641 -1ULL,
2642 0x0c1a000000000000ULL,
2643 -1ULL,
2644 -1ULL,
2645 -1ULL
2647 #endif
2649 { "lw", TILEPRO_OPC_LW, 0x12, 2, TREG_ZERO, 1,
2650 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 23, 15 } },
2651 #ifndef DISASM_ONLY
2653 0ULL,
2654 0xfffff80000000000ULL,
2655 0ULL,
2656 0ULL,
2657 0x8700000000000000ULL
2660 -1ULL,
2661 0x400b700000000000ULL,
2662 -1ULL,
2663 -1ULL,
2664 0x8400000000000000ULL
2666 #endif
2668 { "lw.sn", TILEPRO_OPC_LW_SN, 0x2, 2, TREG_SN, 1,
2669 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2670 #ifndef DISASM_ONLY
2672 0ULL,
2673 0xfffff80000000000ULL,
2674 0ULL,
2675 0ULL,
2676 0ULL
2679 -1ULL,
2680 0x440b700000000000ULL,
2681 -1ULL,
2682 -1ULL,
2683 -1ULL
2685 #endif
2687 { "lw_na", TILEPRO_OPC_LW_NA, 0x2, 2, TREG_ZERO, 1,
2688 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2689 #ifndef DISASM_ONLY
2691 0ULL,
2692 0xfffff80000000000ULL,
2693 0ULL,
2694 0ULL,
2695 0ULL
2698 -1ULL,
2699 0x400bc00000000000ULL,
2700 -1ULL,
2701 -1ULL,
2702 -1ULL
2704 #endif
2706 { "lw_na.sn", TILEPRO_OPC_LW_NA_SN, 0x2, 2, TREG_SN, 1,
2707 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
2708 #ifndef DISASM_ONLY
2710 0ULL,
2711 0xfffff80000000000ULL,
2712 0ULL,
2713 0ULL,
2714 0ULL
2717 -1ULL,
2718 0x440bc00000000000ULL,
2719 -1ULL,
2720 -1ULL,
2721 -1ULL
2723 #endif
2725 { "lwadd", TILEPRO_OPC_LWADD, 0x2, 3, TREG_ZERO, 1,
2726 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2727 #ifndef DISASM_ONLY
2729 0ULL,
2730 0xfff8000000000000ULL,
2731 0ULL,
2732 0ULL,
2733 0ULL
2736 -1ULL,
2737 0x30d0000000000000ULL,
2738 -1ULL,
2739 -1ULL,
2740 -1ULL
2742 #endif
2744 { "lwadd.sn", TILEPRO_OPC_LWADD_SN, 0x2, 3, TREG_SN, 1,
2745 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2746 #ifndef DISASM_ONLY
2748 0ULL,
2749 0xfff8000000000000ULL,
2750 0ULL,
2751 0ULL,
2752 0ULL
2755 -1ULL,
2756 0x34d0000000000000ULL,
2757 -1ULL,
2758 -1ULL,
2759 -1ULL
2761 #endif
2763 { "lwadd_na", TILEPRO_OPC_LWADD_NA, 0x2, 3, TREG_ZERO, 1,
2764 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2765 #ifndef DISASM_ONLY
2767 0ULL,
2768 0xfff8000000000000ULL,
2769 0ULL,
2770 0ULL,
2771 0ULL
2774 -1ULL,
2775 0x30d8000000000000ULL,
2776 -1ULL,
2777 -1ULL,
2778 -1ULL
2780 #endif
2782 { "lwadd_na.sn", TILEPRO_OPC_LWADD_NA_SN, 0x2, 3, TREG_SN, 1,
2783 { { 0, }, { 9, 24, 1 }, { 0, }, { 0, }, { 0, } },
2784 #ifndef DISASM_ONLY
2786 0ULL,
2787 0xfff8000000000000ULL,
2788 0ULL,
2789 0ULL,
2790 0ULL
2793 -1ULL,
2794 0x34d8000000000000ULL,
2795 -1ULL,
2796 -1ULL,
2797 -1ULL
2799 #endif
2801 { "maxb_u", TILEPRO_OPC_MAXB_U, 0x3, 3, TREG_ZERO, 1,
2802 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2803 #ifndef DISASM_ONLY
2805 0x800000007ffc0000ULL,
2806 0xfffe000000000000ULL,
2807 0ULL,
2808 0ULL,
2809 0ULL
2812 0x00000000003c0000ULL,
2813 0x081c000000000000ULL,
2814 -1ULL,
2815 -1ULL,
2816 -1ULL
2818 #endif
2820 { "maxb_u.sn", TILEPRO_OPC_MAXB_U_SN, 0x3, 3, TREG_SN, 1,
2821 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2822 #ifndef DISASM_ONLY
2824 0x800000007ffc0000ULL,
2825 0xfffe000000000000ULL,
2826 0ULL,
2827 0ULL,
2828 0ULL
2831 0x00000000083c0000ULL,
2832 0x0c1c000000000000ULL,
2833 -1ULL,
2834 -1ULL,
2835 -1ULL
2837 #endif
2839 { "maxh", TILEPRO_OPC_MAXH, 0x3, 3, TREG_ZERO, 1,
2840 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2841 #ifndef DISASM_ONLY
2843 0x800000007ffc0000ULL,
2844 0xfffe000000000000ULL,
2845 0ULL,
2846 0ULL,
2847 0ULL
2850 0x0000000000400000ULL,
2851 0x081e000000000000ULL,
2852 -1ULL,
2853 -1ULL,
2854 -1ULL
2856 #endif
2858 { "maxh.sn", TILEPRO_OPC_MAXH_SN, 0x3, 3, TREG_SN, 1,
2859 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2860 #ifndef DISASM_ONLY
2862 0x800000007ffc0000ULL,
2863 0xfffe000000000000ULL,
2864 0ULL,
2865 0ULL,
2866 0ULL
2869 0x0000000008400000ULL,
2870 0x0c1e000000000000ULL,
2871 -1ULL,
2872 -1ULL,
2873 -1ULL
2875 #endif
2877 { "maxib_u", TILEPRO_OPC_MAXIB_U, 0x3, 3, TREG_ZERO, 1,
2878 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
2879 #ifndef DISASM_ONLY
2881 0x800000007ff00000ULL,
2882 0xfff8000000000000ULL,
2883 0ULL,
2884 0ULL,
2885 0ULL
2888 0x0000000040400000ULL,
2889 0x3028000000000000ULL,
2890 -1ULL,
2891 -1ULL,
2892 -1ULL
2894 #endif
2896 { "maxib_u.sn", TILEPRO_OPC_MAXIB_U_SN, 0x3, 3, TREG_SN, 1,
2897 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
2898 #ifndef DISASM_ONLY
2900 0x800000007ff00000ULL,
2901 0xfff8000000000000ULL,
2902 0ULL,
2903 0ULL,
2904 0ULL
2907 0x0000000048400000ULL,
2908 0x3428000000000000ULL,
2909 -1ULL,
2910 -1ULL,
2911 -1ULL
2913 #endif
2915 { "maxih", TILEPRO_OPC_MAXIH, 0x3, 3, TREG_ZERO, 1,
2916 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
2917 #ifndef DISASM_ONLY
2919 0x800000007ff00000ULL,
2920 0xfff8000000000000ULL,
2921 0ULL,
2922 0ULL,
2923 0ULL
2926 0x0000000040500000ULL,
2927 0x3030000000000000ULL,
2928 -1ULL,
2929 -1ULL,
2930 -1ULL
2932 #endif
2934 { "maxih.sn", TILEPRO_OPC_MAXIH_SN, 0x3, 3, TREG_SN, 1,
2935 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
2936 #ifndef DISASM_ONLY
2938 0x800000007ff00000ULL,
2939 0xfff8000000000000ULL,
2940 0ULL,
2941 0ULL,
2942 0ULL
2945 0x0000000048500000ULL,
2946 0x3430000000000000ULL,
2947 -1ULL,
2948 -1ULL,
2949 -1ULL
2951 #endif
2953 { "mf", TILEPRO_OPC_MF, 0x2, 0, TREG_ZERO, 1,
2954 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
2955 #ifndef DISASM_ONLY
2957 0ULL,
2958 0xfbfff80000000000ULL,
2959 0ULL,
2960 0ULL,
2961 0ULL
2964 -1ULL,
2965 0x400b780000000000ULL,
2966 -1ULL,
2967 -1ULL,
2968 -1ULL
2970 #endif
2972 { "mfspr", TILEPRO_OPC_MFSPR, 0x2, 2, TREG_ZERO, 1,
2973 { { 0, }, { 9, 25 }, { 0, }, { 0, }, { 0, } },
2974 #ifndef DISASM_ONLY
2976 0ULL,
2977 0xfbf8000000000000ULL,
2978 0ULL,
2979 0ULL,
2980 0ULL
2983 -1ULL,
2984 0x3038000000000000ULL,
2985 -1ULL,
2986 -1ULL,
2987 -1ULL
2989 #endif
2991 { "minb_u", TILEPRO_OPC_MINB_U, 0x3, 3, TREG_ZERO, 1,
2992 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
2993 #ifndef DISASM_ONLY
2995 0x800000007ffc0000ULL,
2996 0xfffe000000000000ULL,
2997 0ULL,
2998 0ULL,
2999 0ULL
3002 0x0000000000440000ULL,
3003 0x0820000000000000ULL,
3004 -1ULL,
3005 -1ULL,
3006 -1ULL
3008 #endif
3010 { "minb_u.sn", TILEPRO_OPC_MINB_U_SN, 0x3, 3, TREG_SN, 1,
3011 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3012 #ifndef DISASM_ONLY
3014 0x800000007ffc0000ULL,
3015 0xfffe000000000000ULL,
3016 0ULL,
3017 0ULL,
3018 0ULL
3021 0x0000000008440000ULL,
3022 0x0c20000000000000ULL,
3023 -1ULL,
3024 -1ULL,
3025 -1ULL
3027 #endif
3029 { "minh", TILEPRO_OPC_MINH, 0x3, 3, TREG_ZERO, 1,
3030 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3031 #ifndef DISASM_ONLY
3033 0x800000007ffc0000ULL,
3034 0xfffe000000000000ULL,
3035 0ULL,
3036 0ULL,
3037 0ULL
3040 0x0000000000480000ULL,
3041 0x0822000000000000ULL,
3042 -1ULL,
3043 -1ULL,
3044 -1ULL
3046 #endif
3048 { "minh.sn", TILEPRO_OPC_MINH_SN, 0x3, 3, TREG_SN, 1,
3049 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3050 #ifndef DISASM_ONLY
3052 0x800000007ffc0000ULL,
3053 0xfffe000000000000ULL,
3054 0ULL,
3055 0ULL,
3056 0ULL
3059 0x0000000008480000ULL,
3060 0x0c22000000000000ULL,
3061 -1ULL,
3062 -1ULL,
3063 -1ULL
3065 #endif
3067 { "minib_u", TILEPRO_OPC_MINIB_U, 0x3, 3, TREG_ZERO, 1,
3068 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
3069 #ifndef DISASM_ONLY
3071 0x800000007ff00000ULL,
3072 0xfff8000000000000ULL,
3073 0ULL,
3074 0ULL,
3075 0ULL
3078 0x0000000040600000ULL,
3079 0x3040000000000000ULL,
3080 -1ULL,
3081 -1ULL,
3082 -1ULL
3084 #endif
3086 { "minib_u.sn", TILEPRO_OPC_MINIB_U_SN, 0x3, 3, TREG_SN, 1,
3087 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
3088 #ifndef DISASM_ONLY
3090 0x800000007ff00000ULL,
3091 0xfff8000000000000ULL,
3092 0ULL,
3093 0ULL,
3094 0ULL
3097 0x0000000048600000ULL,
3098 0x3440000000000000ULL,
3099 -1ULL,
3100 -1ULL,
3101 -1ULL
3103 #endif
3105 { "minih", TILEPRO_OPC_MINIH, 0x3, 3, TREG_ZERO, 1,
3106 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
3107 #ifndef DISASM_ONLY
3109 0x800000007ff00000ULL,
3110 0xfff8000000000000ULL,
3111 0ULL,
3112 0ULL,
3113 0ULL
3116 0x0000000040700000ULL,
3117 0x3048000000000000ULL,
3118 -1ULL,
3119 -1ULL,
3120 -1ULL
3122 #endif
3124 { "minih.sn", TILEPRO_OPC_MINIH_SN, 0x3, 3, TREG_SN, 1,
3125 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
3126 #ifndef DISASM_ONLY
3128 0x800000007ff00000ULL,
3129 0xfff8000000000000ULL,
3130 0ULL,
3131 0ULL,
3132 0ULL
3135 0x0000000048700000ULL,
3136 0x3448000000000000ULL,
3137 -1ULL,
3138 -1ULL,
3139 -1ULL
3141 #endif
3143 { "mm", TILEPRO_OPC_MM, 0x3, 5, TREG_ZERO, 1,
3144 { { 7, 8, 16, 26, 27 }, { 9, 10, 17, 28, 29 }, { 0, }, { 0, }, { 0, } },
3145 #ifndef DISASM_ONLY
3147 0x8000000070000000ULL,
3148 0xf800000000000000ULL,
3149 0ULL,
3150 0ULL,
3151 0ULL
3154 0x0000000060000000ULL,
3155 0x3800000000000000ULL,
3156 -1ULL,
3157 -1ULL,
3158 -1ULL
3160 #endif
3162 { "mnz", TILEPRO_OPC_MNZ, 0xf, 3, TREG_ZERO, 1,
3163 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
3164 #ifndef DISASM_ONLY
3166 0x800000007ffc0000ULL,
3167 0xfffe000000000000ULL,
3168 0x80000000780c0000ULL,
3169 0xf806000000000000ULL,
3170 0ULL
3173 0x0000000000540000ULL,
3174 0x0828000000000000ULL,
3175 0x8000000010000000ULL,
3176 0x9002000000000000ULL,
3177 -1ULL
3179 #endif
3181 { "mnz.sn", TILEPRO_OPC_MNZ_SN, 0x3, 3, TREG_SN, 1,
3182 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3183 #ifndef DISASM_ONLY
3185 0x800000007ffc0000ULL,
3186 0xfffe000000000000ULL,
3187 0ULL,
3188 0ULL,
3189 0ULL
3192 0x0000000008540000ULL,
3193 0x0c28000000000000ULL,
3194 -1ULL,
3195 -1ULL,
3196 -1ULL
3198 #endif
3200 { "mnzb", TILEPRO_OPC_MNZB, 0x3, 3, TREG_ZERO, 1,
3201 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3202 #ifndef DISASM_ONLY
3204 0x800000007ffc0000ULL,
3205 0xfffe000000000000ULL,
3206 0ULL,
3207 0ULL,
3208 0ULL
3211 0x00000000004c0000ULL,
3212 0x0824000000000000ULL,
3213 -1ULL,
3214 -1ULL,
3215 -1ULL
3217 #endif
3219 { "mnzb.sn", TILEPRO_OPC_MNZB_SN, 0x3, 3, TREG_SN, 1,
3220 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3221 #ifndef DISASM_ONLY
3223 0x800000007ffc0000ULL,
3224 0xfffe000000000000ULL,
3225 0ULL,
3226 0ULL,
3227 0ULL
3230 0x00000000084c0000ULL,
3231 0x0c24000000000000ULL,
3232 -1ULL,
3233 -1ULL,
3234 -1ULL
3236 #endif
3238 { "mnzh", TILEPRO_OPC_MNZH, 0x3, 3, TREG_ZERO, 1,
3239 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3240 #ifndef DISASM_ONLY
3242 0x800000007ffc0000ULL,
3243 0xfffe000000000000ULL,
3244 0ULL,
3245 0ULL,
3246 0ULL
3249 0x0000000000500000ULL,
3250 0x0826000000000000ULL,
3251 -1ULL,
3252 -1ULL,
3253 -1ULL
3255 #endif
3257 { "mnzh.sn", TILEPRO_OPC_MNZH_SN, 0x3, 3, TREG_SN, 1,
3258 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
3259 #ifndef DISASM_ONLY
3261 0x800000007ffc0000ULL,
3262 0xfffe000000000000ULL,
3263 0ULL,
3264 0ULL,
3265 0ULL
3268 0x0000000008500000ULL,
3269 0x0c26000000000000ULL,
3270 -1ULL,
3271 -1ULL,
3272 -1ULL
3274 #endif
3276 { "mtspr", TILEPRO_OPC_MTSPR, 0x2, 2, TREG_ZERO, 1,
3277 { { 0, }, { 30, 10 }, { 0, }, { 0, }, { 0, } },
3278 #ifndef DISASM_ONLY
3280 0ULL,
3281 0xfbf8000000000000ULL,
3282 0ULL,
3283 0ULL,
3284 0ULL
3287 -1ULL,
3288 0x3050000000000000ULL,
3289 -1ULL,
3290 -1ULL,
3291 -1ULL
3293 #endif
3295 { "mulhh_ss", TILEPRO_OPC_MULHH_SS, 0x5, 3, TREG_ZERO, 1,
3296 { { 7, 8, 16 }, { 0, }, { 11, 12, 18 }, { 0, }, { 0, } },
3297 #ifndef DISASM_ONLY
3299 0x800000007ffc0000ULL,
3300 0ULL,
3301 0x80000000780c0000ULL,
3302 0ULL,
3303 0ULL
3306 0x0000000000680000ULL,
3307 -1ULL,
3308 0x8000000038000000ULL,
3309 -1ULL,
3310 -1ULL
3312 #endif
3314 { "mulhh_ss.sn", TILEPRO_OPC_MULHH_SS_SN, 0x1, 3, TREG_SN, 1,
3315 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3316 #ifndef DISASM_ONLY
3318 0x800000007ffc0000ULL,
3319 0ULL,
3320 0ULL,
3321 0ULL,
3322 0ULL
3325 0x0000000008680000ULL,
3326 -1ULL,
3327 -1ULL,
3328 -1ULL,
3329 -1ULL
3331 #endif
3333 { "mulhh_su", TILEPRO_OPC_MULHH_SU, 0x1, 3, TREG_ZERO, 1,
3334 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3335 #ifndef DISASM_ONLY
3337 0x800000007ffc0000ULL,
3338 0ULL,
3339 0ULL,
3340 0ULL,
3341 0ULL
3344 0x00000000006c0000ULL,
3345 -1ULL,
3346 -1ULL,
3347 -1ULL,
3348 -1ULL
3350 #endif
3352 { "mulhh_su.sn", TILEPRO_OPC_MULHH_SU_SN, 0x1, 3, TREG_SN, 1,
3353 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3354 #ifndef DISASM_ONLY
3356 0x800000007ffc0000ULL,
3357 0ULL,
3358 0ULL,
3359 0ULL,
3360 0ULL
3363 0x00000000086c0000ULL,
3364 -1ULL,
3365 -1ULL,
3366 -1ULL,
3367 -1ULL
3369 #endif
3371 { "mulhh_uu", TILEPRO_OPC_MULHH_UU, 0x5, 3, TREG_ZERO, 1,
3372 { { 7, 8, 16 }, { 0, }, { 11, 12, 18 }, { 0, }, { 0, } },
3373 #ifndef DISASM_ONLY
3375 0x800000007ffc0000ULL,
3376 0ULL,
3377 0x80000000780c0000ULL,
3378 0ULL,
3379 0ULL
3382 0x0000000000700000ULL,
3383 -1ULL,
3384 0x8000000038040000ULL,
3385 -1ULL,
3386 -1ULL
3388 #endif
3390 { "mulhh_uu.sn", TILEPRO_OPC_MULHH_UU_SN, 0x1, 3, TREG_SN, 1,
3391 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3392 #ifndef DISASM_ONLY
3394 0x800000007ffc0000ULL,
3395 0ULL,
3396 0ULL,
3397 0ULL,
3398 0ULL
3401 0x0000000008700000ULL,
3402 -1ULL,
3403 -1ULL,
3404 -1ULL,
3405 -1ULL
3407 #endif
3409 { "mulhha_ss", TILEPRO_OPC_MULHHA_SS, 0x5, 3, TREG_ZERO, 1,
3410 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
3411 #ifndef DISASM_ONLY
3413 0x800000007ffc0000ULL,
3414 0ULL,
3415 0x80000000780c0000ULL,
3416 0ULL,
3417 0ULL
3420 0x0000000000580000ULL,
3421 -1ULL,
3422 0x8000000040000000ULL,
3423 -1ULL,
3424 -1ULL
3426 #endif
3428 { "mulhha_ss.sn", TILEPRO_OPC_MULHHA_SS_SN, 0x1, 3, TREG_SN, 1,
3429 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3430 #ifndef DISASM_ONLY
3432 0x800000007ffc0000ULL,
3433 0ULL,
3434 0ULL,
3435 0ULL,
3436 0ULL
3439 0x0000000008580000ULL,
3440 -1ULL,
3441 -1ULL,
3442 -1ULL,
3443 -1ULL
3445 #endif
3447 { "mulhha_su", TILEPRO_OPC_MULHHA_SU, 0x1, 3, TREG_ZERO, 1,
3448 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3449 #ifndef DISASM_ONLY
3451 0x800000007ffc0000ULL,
3452 0ULL,
3453 0ULL,
3454 0ULL,
3455 0ULL
3458 0x00000000005c0000ULL,
3459 -1ULL,
3460 -1ULL,
3461 -1ULL,
3462 -1ULL
3464 #endif
3466 { "mulhha_su.sn", TILEPRO_OPC_MULHHA_SU_SN, 0x1, 3, TREG_SN, 1,
3467 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3468 #ifndef DISASM_ONLY
3470 0x800000007ffc0000ULL,
3471 0ULL,
3472 0ULL,
3473 0ULL,
3474 0ULL
3477 0x00000000085c0000ULL,
3478 -1ULL,
3479 -1ULL,
3480 -1ULL,
3481 -1ULL
3483 #endif
3485 { "mulhha_uu", TILEPRO_OPC_MULHHA_UU, 0x5, 3, TREG_ZERO, 1,
3486 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
3487 #ifndef DISASM_ONLY
3489 0x800000007ffc0000ULL,
3490 0ULL,
3491 0x80000000780c0000ULL,
3492 0ULL,
3493 0ULL
3496 0x0000000000600000ULL,
3497 -1ULL,
3498 0x8000000040040000ULL,
3499 -1ULL,
3500 -1ULL
3502 #endif
3504 { "mulhha_uu.sn", TILEPRO_OPC_MULHHA_UU_SN, 0x1, 3, TREG_SN, 1,
3505 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3506 #ifndef DISASM_ONLY
3508 0x800000007ffc0000ULL,
3509 0ULL,
3510 0ULL,
3511 0ULL,
3512 0ULL
3515 0x0000000008600000ULL,
3516 -1ULL,
3517 -1ULL,
3518 -1ULL,
3519 -1ULL
3521 #endif
3523 { "mulhhsa_uu", TILEPRO_OPC_MULHHSA_UU, 0x1, 3, TREG_ZERO, 1,
3524 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3525 #ifndef DISASM_ONLY
3527 0x800000007ffc0000ULL,
3528 0ULL,
3529 0ULL,
3530 0ULL,
3531 0ULL
3534 0x0000000000640000ULL,
3535 -1ULL,
3536 -1ULL,
3537 -1ULL,
3538 -1ULL
3540 #endif
3542 { "mulhhsa_uu.sn", TILEPRO_OPC_MULHHSA_UU_SN, 0x1, 3, TREG_SN, 1,
3543 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3544 #ifndef DISASM_ONLY
3546 0x800000007ffc0000ULL,
3547 0ULL,
3548 0ULL,
3549 0ULL,
3550 0ULL
3553 0x0000000008640000ULL,
3554 -1ULL,
3555 -1ULL,
3556 -1ULL,
3557 -1ULL
3559 #endif
3561 { "mulhl_ss", TILEPRO_OPC_MULHL_SS, 0x1, 3, TREG_ZERO, 1,
3562 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3563 #ifndef DISASM_ONLY
3565 0x800000007ffc0000ULL,
3566 0ULL,
3567 0ULL,
3568 0ULL,
3569 0ULL
3572 0x0000000000880000ULL,
3573 -1ULL,
3574 -1ULL,
3575 -1ULL,
3576 -1ULL
3578 #endif
3580 { "mulhl_ss.sn", TILEPRO_OPC_MULHL_SS_SN, 0x1, 3, TREG_SN, 1,
3581 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3582 #ifndef DISASM_ONLY
3584 0x800000007ffc0000ULL,
3585 0ULL,
3586 0ULL,
3587 0ULL,
3588 0ULL
3591 0x0000000008880000ULL,
3592 -1ULL,
3593 -1ULL,
3594 -1ULL,
3595 -1ULL
3597 #endif
3599 { "mulhl_su", TILEPRO_OPC_MULHL_SU, 0x1, 3, TREG_ZERO, 1,
3600 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3601 #ifndef DISASM_ONLY
3603 0x800000007ffc0000ULL,
3604 0ULL,
3605 0ULL,
3606 0ULL,
3607 0ULL
3610 0x00000000008c0000ULL,
3611 -1ULL,
3612 -1ULL,
3613 -1ULL,
3614 -1ULL
3616 #endif
3618 { "mulhl_su.sn", TILEPRO_OPC_MULHL_SU_SN, 0x1, 3, TREG_SN, 1,
3619 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3620 #ifndef DISASM_ONLY
3622 0x800000007ffc0000ULL,
3623 0ULL,
3624 0ULL,
3625 0ULL,
3626 0ULL
3629 0x00000000088c0000ULL,
3630 -1ULL,
3631 -1ULL,
3632 -1ULL,
3633 -1ULL
3635 #endif
3637 { "mulhl_us", TILEPRO_OPC_MULHL_US, 0x1, 3, TREG_ZERO, 1,
3638 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3639 #ifndef DISASM_ONLY
3641 0x800000007ffc0000ULL,
3642 0ULL,
3643 0ULL,
3644 0ULL,
3645 0ULL
3648 0x0000000000900000ULL,
3649 -1ULL,
3650 -1ULL,
3651 -1ULL,
3652 -1ULL
3654 #endif
3656 { "mulhl_us.sn", TILEPRO_OPC_MULHL_US_SN, 0x1, 3, TREG_SN, 1,
3657 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3658 #ifndef DISASM_ONLY
3660 0x800000007ffc0000ULL,
3661 0ULL,
3662 0ULL,
3663 0ULL,
3664 0ULL
3667 0x0000000008900000ULL,
3668 -1ULL,
3669 -1ULL,
3670 -1ULL,
3671 -1ULL
3673 #endif
3675 { "mulhl_uu", TILEPRO_OPC_MULHL_UU, 0x1, 3, TREG_ZERO, 1,
3676 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3677 #ifndef DISASM_ONLY
3679 0x800000007ffc0000ULL,
3680 0ULL,
3681 0ULL,
3682 0ULL,
3683 0ULL
3686 0x0000000000940000ULL,
3687 -1ULL,
3688 -1ULL,
3689 -1ULL,
3690 -1ULL
3692 #endif
3694 { "mulhl_uu.sn", TILEPRO_OPC_MULHL_UU_SN, 0x1, 3, TREG_SN, 1,
3695 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3696 #ifndef DISASM_ONLY
3698 0x800000007ffc0000ULL,
3699 0ULL,
3700 0ULL,
3701 0ULL,
3702 0ULL
3705 0x0000000008940000ULL,
3706 -1ULL,
3707 -1ULL,
3708 -1ULL,
3709 -1ULL
3711 #endif
3713 { "mulhla_ss", TILEPRO_OPC_MULHLA_SS, 0x1, 3, TREG_ZERO, 1,
3714 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3715 #ifndef DISASM_ONLY
3717 0x800000007ffc0000ULL,
3718 0ULL,
3719 0ULL,
3720 0ULL,
3721 0ULL
3724 0x0000000000740000ULL,
3725 -1ULL,
3726 -1ULL,
3727 -1ULL,
3728 -1ULL
3730 #endif
3732 { "mulhla_ss.sn", TILEPRO_OPC_MULHLA_SS_SN, 0x1, 3, TREG_SN, 1,
3733 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3734 #ifndef DISASM_ONLY
3736 0x800000007ffc0000ULL,
3737 0ULL,
3738 0ULL,
3739 0ULL,
3740 0ULL
3743 0x0000000008740000ULL,
3744 -1ULL,
3745 -1ULL,
3746 -1ULL,
3747 -1ULL
3749 #endif
3751 { "mulhla_su", TILEPRO_OPC_MULHLA_SU, 0x1, 3, TREG_ZERO, 1,
3752 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3753 #ifndef DISASM_ONLY
3755 0x800000007ffc0000ULL,
3756 0ULL,
3757 0ULL,
3758 0ULL,
3759 0ULL
3762 0x0000000000780000ULL,
3763 -1ULL,
3764 -1ULL,
3765 -1ULL,
3766 -1ULL
3768 #endif
3770 { "mulhla_su.sn", TILEPRO_OPC_MULHLA_SU_SN, 0x1, 3, TREG_SN, 1,
3771 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3772 #ifndef DISASM_ONLY
3774 0x800000007ffc0000ULL,
3775 0ULL,
3776 0ULL,
3777 0ULL,
3778 0ULL
3781 0x0000000008780000ULL,
3782 -1ULL,
3783 -1ULL,
3784 -1ULL,
3785 -1ULL
3787 #endif
3789 { "mulhla_us", TILEPRO_OPC_MULHLA_US, 0x1, 3, TREG_ZERO, 1,
3790 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3791 #ifndef DISASM_ONLY
3793 0x800000007ffc0000ULL,
3794 0ULL,
3795 0ULL,
3796 0ULL,
3797 0ULL
3800 0x00000000007c0000ULL,
3801 -1ULL,
3802 -1ULL,
3803 -1ULL,
3804 -1ULL
3806 #endif
3808 { "mulhla_us.sn", TILEPRO_OPC_MULHLA_US_SN, 0x1, 3, TREG_SN, 1,
3809 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3810 #ifndef DISASM_ONLY
3812 0x800000007ffc0000ULL,
3813 0ULL,
3814 0ULL,
3815 0ULL,
3816 0ULL
3819 0x00000000087c0000ULL,
3820 -1ULL,
3821 -1ULL,
3822 -1ULL,
3823 -1ULL
3825 #endif
3827 { "mulhla_uu", TILEPRO_OPC_MULHLA_UU, 0x1, 3, TREG_ZERO, 1,
3828 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3829 #ifndef DISASM_ONLY
3831 0x800000007ffc0000ULL,
3832 0ULL,
3833 0ULL,
3834 0ULL,
3835 0ULL
3838 0x0000000000800000ULL,
3839 -1ULL,
3840 -1ULL,
3841 -1ULL,
3842 -1ULL
3844 #endif
3846 { "mulhla_uu.sn", TILEPRO_OPC_MULHLA_UU_SN, 0x1, 3, TREG_SN, 1,
3847 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3848 #ifndef DISASM_ONLY
3850 0x800000007ffc0000ULL,
3851 0ULL,
3852 0ULL,
3853 0ULL,
3854 0ULL
3857 0x0000000008800000ULL,
3858 -1ULL,
3859 -1ULL,
3860 -1ULL,
3861 -1ULL
3863 #endif
3865 { "mulhlsa_uu", TILEPRO_OPC_MULHLSA_UU, 0x5, 3, TREG_ZERO, 1,
3866 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
3867 #ifndef DISASM_ONLY
3869 0x800000007ffc0000ULL,
3870 0ULL,
3871 0x80000000780c0000ULL,
3872 0ULL,
3873 0ULL
3876 0x0000000000840000ULL,
3877 -1ULL,
3878 0x8000000030000000ULL,
3879 -1ULL,
3880 -1ULL
3882 #endif
3884 { "mulhlsa_uu.sn", TILEPRO_OPC_MULHLSA_UU_SN, 0x1, 3, TREG_SN, 1,
3885 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3886 #ifndef DISASM_ONLY
3888 0x800000007ffc0000ULL,
3889 0ULL,
3890 0ULL,
3891 0ULL,
3892 0ULL
3895 0x0000000008840000ULL,
3896 -1ULL,
3897 -1ULL,
3898 -1ULL,
3899 -1ULL
3901 #endif
3903 { "mulll_ss", TILEPRO_OPC_MULLL_SS, 0x5, 3, TREG_ZERO, 1,
3904 { { 7, 8, 16 }, { 0, }, { 11, 12, 18 }, { 0, }, { 0, } },
3905 #ifndef DISASM_ONLY
3907 0x800000007ffc0000ULL,
3908 0ULL,
3909 0x80000000780c0000ULL,
3910 0ULL,
3911 0ULL
3914 0x0000000000a80000ULL,
3915 -1ULL,
3916 0x8000000038080000ULL,
3917 -1ULL,
3918 -1ULL
3920 #endif
3922 { "mulll_ss.sn", TILEPRO_OPC_MULLL_SS_SN, 0x1, 3, TREG_SN, 1,
3923 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3924 #ifndef DISASM_ONLY
3926 0x800000007ffc0000ULL,
3927 0ULL,
3928 0ULL,
3929 0ULL,
3930 0ULL
3933 0x0000000008a80000ULL,
3934 -1ULL,
3935 -1ULL,
3936 -1ULL,
3937 -1ULL
3939 #endif
3941 { "mulll_su", TILEPRO_OPC_MULLL_SU, 0x1, 3, TREG_ZERO, 1,
3942 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3943 #ifndef DISASM_ONLY
3945 0x800000007ffc0000ULL,
3946 0ULL,
3947 0ULL,
3948 0ULL,
3949 0ULL
3952 0x0000000000ac0000ULL,
3953 -1ULL,
3954 -1ULL,
3955 -1ULL,
3956 -1ULL
3958 #endif
3960 { "mulll_su.sn", TILEPRO_OPC_MULLL_SU_SN, 0x1, 3, TREG_SN, 1,
3961 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
3962 #ifndef DISASM_ONLY
3964 0x800000007ffc0000ULL,
3965 0ULL,
3966 0ULL,
3967 0ULL,
3968 0ULL
3971 0x0000000008ac0000ULL,
3972 -1ULL,
3973 -1ULL,
3974 -1ULL,
3975 -1ULL
3977 #endif
3979 { "mulll_uu", TILEPRO_OPC_MULLL_UU, 0x5, 3, TREG_ZERO, 1,
3980 { { 7, 8, 16 }, { 0, }, { 11, 12, 18 }, { 0, }, { 0, } },
3981 #ifndef DISASM_ONLY
3983 0x800000007ffc0000ULL,
3984 0ULL,
3985 0x80000000780c0000ULL,
3986 0ULL,
3987 0ULL
3990 0x0000000000b00000ULL,
3991 -1ULL,
3992 0x80000000380c0000ULL,
3993 -1ULL,
3994 -1ULL
3996 #endif
3998 { "mulll_uu.sn", TILEPRO_OPC_MULLL_UU_SN, 0x1, 3, TREG_SN, 1,
3999 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4000 #ifndef DISASM_ONLY
4002 0x800000007ffc0000ULL,
4003 0ULL,
4004 0ULL,
4005 0ULL,
4006 0ULL
4009 0x0000000008b00000ULL,
4010 -1ULL,
4011 -1ULL,
4012 -1ULL,
4013 -1ULL
4015 #endif
4017 { "mullla_ss", TILEPRO_OPC_MULLLA_SS, 0x5, 3, TREG_ZERO, 1,
4018 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
4019 #ifndef DISASM_ONLY
4021 0x800000007ffc0000ULL,
4022 0ULL,
4023 0x80000000780c0000ULL,
4024 0ULL,
4025 0ULL
4028 0x0000000000980000ULL,
4029 -1ULL,
4030 0x8000000040080000ULL,
4031 -1ULL,
4032 -1ULL
4034 #endif
4036 { "mullla_ss.sn", TILEPRO_OPC_MULLLA_SS_SN, 0x1, 3, TREG_SN, 1,
4037 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4038 #ifndef DISASM_ONLY
4040 0x800000007ffc0000ULL,
4041 0ULL,
4042 0ULL,
4043 0ULL,
4044 0ULL
4047 0x0000000008980000ULL,
4048 -1ULL,
4049 -1ULL,
4050 -1ULL,
4051 -1ULL
4053 #endif
4055 { "mullla_su", TILEPRO_OPC_MULLLA_SU, 0x1, 3, TREG_ZERO, 1,
4056 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4057 #ifndef DISASM_ONLY
4059 0x800000007ffc0000ULL,
4060 0ULL,
4061 0ULL,
4062 0ULL,
4063 0ULL
4066 0x00000000009c0000ULL,
4067 -1ULL,
4068 -1ULL,
4069 -1ULL,
4070 -1ULL
4072 #endif
4074 { "mullla_su.sn", TILEPRO_OPC_MULLLA_SU_SN, 0x1, 3, TREG_SN, 1,
4075 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4076 #ifndef DISASM_ONLY
4078 0x800000007ffc0000ULL,
4079 0ULL,
4080 0ULL,
4081 0ULL,
4082 0ULL
4085 0x00000000089c0000ULL,
4086 -1ULL,
4087 -1ULL,
4088 -1ULL,
4089 -1ULL
4091 #endif
4093 { "mullla_uu", TILEPRO_OPC_MULLLA_UU, 0x5, 3, TREG_ZERO, 1,
4094 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
4095 #ifndef DISASM_ONLY
4097 0x800000007ffc0000ULL,
4098 0ULL,
4099 0x80000000780c0000ULL,
4100 0ULL,
4101 0ULL
4104 0x0000000000a00000ULL,
4105 -1ULL,
4106 0x80000000400c0000ULL,
4107 -1ULL,
4108 -1ULL
4110 #endif
4112 { "mullla_uu.sn", TILEPRO_OPC_MULLLA_UU_SN, 0x1, 3, TREG_SN, 1,
4113 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4114 #ifndef DISASM_ONLY
4116 0x800000007ffc0000ULL,
4117 0ULL,
4118 0ULL,
4119 0ULL,
4120 0ULL
4123 0x0000000008a00000ULL,
4124 -1ULL,
4125 -1ULL,
4126 -1ULL,
4127 -1ULL
4129 #endif
4131 { "mulllsa_uu", TILEPRO_OPC_MULLLSA_UU, 0x1, 3, TREG_ZERO, 1,
4132 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4133 #ifndef DISASM_ONLY
4135 0x800000007ffc0000ULL,
4136 0ULL,
4137 0ULL,
4138 0ULL,
4139 0ULL
4142 0x0000000000a40000ULL,
4143 -1ULL,
4144 -1ULL,
4145 -1ULL,
4146 -1ULL
4148 #endif
4150 { "mulllsa_uu.sn", TILEPRO_OPC_MULLLSA_UU_SN, 0x1, 3, TREG_SN, 1,
4151 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4152 #ifndef DISASM_ONLY
4154 0x800000007ffc0000ULL,
4155 0ULL,
4156 0ULL,
4157 0ULL,
4158 0ULL
4161 0x0000000008a40000ULL,
4162 -1ULL,
4163 -1ULL,
4164 -1ULL,
4165 -1ULL
4167 #endif
4169 { "mvnz", TILEPRO_OPC_MVNZ, 0x5, 3, TREG_ZERO, 1,
4170 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
4171 #ifndef DISASM_ONLY
4173 0x800000007ffc0000ULL,
4174 0ULL,
4175 0x80000000780c0000ULL,
4176 0ULL,
4177 0ULL
4180 0x0000000000b40000ULL,
4181 -1ULL,
4182 0x8000000010040000ULL,
4183 -1ULL,
4184 -1ULL
4186 #endif
4188 { "mvnz.sn", TILEPRO_OPC_MVNZ_SN, 0x1, 3, TREG_SN, 1,
4189 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4190 #ifndef DISASM_ONLY
4192 0x800000007ffc0000ULL,
4193 0ULL,
4194 0ULL,
4195 0ULL,
4196 0ULL
4199 0x0000000008b40000ULL,
4200 -1ULL,
4201 -1ULL,
4202 -1ULL,
4203 -1ULL
4205 #endif
4207 { "mvz", TILEPRO_OPC_MVZ, 0x5, 3, TREG_ZERO, 1,
4208 { { 21, 8, 16 }, { 0, }, { 31, 12, 18 }, { 0, }, { 0, } },
4209 #ifndef DISASM_ONLY
4211 0x800000007ffc0000ULL,
4212 0ULL,
4213 0x80000000780c0000ULL,
4214 0ULL,
4215 0ULL
4218 0x0000000000b80000ULL,
4219 -1ULL,
4220 0x8000000010080000ULL,
4221 -1ULL,
4222 -1ULL
4224 #endif
4226 { "mvz.sn", TILEPRO_OPC_MVZ_SN, 0x1, 3, TREG_SN, 1,
4227 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4228 #ifndef DISASM_ONLY
4230 0x800000007ffc0000ULL,
4231 0ULL,
4232 0ULL,
4233 0ULL,
4234 0ULL
4237 0x0000000008b80000ULL,
4238 -1ULL,
4239 -1ULL,
4240 -1ULL,
4241 -1ULL
4243 #endif
4245 { "mz", TILEPRO_OPC_MZ, 0xf, 3, TREG_ZERO, 1,
4246 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4247 #ifndef DISASM_ONLY
4249 0x800000007ffc0000ULL,
4250 0xfffe000000000000ULL,
4251 0x80000000780c0000ULL,
4252 0xf806000000000000ULL,
4253 0ULL
4256 0x0000000000c40000ULL,
4257 0x082e000000000000ULL,
4258 0x80000000100c0000ULL,
4259 0x9004000000000000ULL,
4260 -1ULL
4262 #endif
4264 { "mz.sn", TILEPRO_OPC_MZ_SN, 0x3, 3, TREG_SN, 1,
4265 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4266 #ifndef DISASM_ONLY
4268 0x800000007ffc0000ULL,
4269 0xfffe000000000000ULL,
4270 0ULL,
4271 0ULL,
4272 0ULL
4275 0x0000000008c40000ULL,
4276 0x0c2e000000000000ULL,
4277 -1ULL,
4278 -1ULL,
4279 -1ULL
4281 #endif
4283 { "mzb", TILEPRO_OPC_MZB, 0x3, 3, TREG_ZERO, 1,
4284 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4285 #ifndef DISASM_ONLY
4287 0x800000007ffc0000ULL,
4288 0xfffe000000000000ULL,
4289 0ULL,
4290 0ULL,
4291 0ULL
4294 0x0000000000bc0000ULL,
4295 0x082a000000000000ULL,
4296 -1ULL,
4297 -1ULL,
4298 -1ULL
4300 #endif
4302 { "mzb.sn", TILEPRO_OPC_MZB_SN, 0x3, 3, TREG_SN, 1,
4303 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4304 #ifndef DISASM_ONLY
4306 0x800000007ffc0000ULL,
4307 0xfffe000000000000ULL,
4308 0ULL,
4309 0ULL,
4310 0ULL
4313 0x0000000008bc0000ULL,
4314 0x0c2a000000000000ULL,
4315 -1ULL,
4316 -1ULL,
4317 -1ULL
4319 #endif
4321 { "mzh", TILEPRO_OPC_MZH, 0x3, 3, TREG_ZERO, 1,
4322 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4323 #ifndef DISASM_ONLY
4325 0x800000007ffc0000ULL,
4326 0xfffe000000000000ULL,
4327 0ULL,
4328 0ULL,
4329 0ULL
4332 0x0000000000c00000ULL,
4333 0x082c000000000000ULL,
4334 -1ULL,
4335 -1ULL,
4336 -1ULL
4338 #endif
4340 { "mzh.sn", TILEPRO_OPC_MZH_SN, 0x3, 3, TREG_SN, 1,
4341 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4342 #ifndef DISASM_ONLY
4344 0x800000007ffc0000ULL,
4345 0xfffe000000000000ULL,
4346 0ULL,
4347 0ULL,
4348 0ULL
4351 0x0000000008c00000ULL,
4352 0x0c2c000000000000ULL,
4353 -1ULL,
4354 -1ULL,
4355 -1ULL
4357 #endif
4359 { "nap", TILEPRO_OPC_NAP, 0x2, 0, TREG_ZERO, 0,
4360 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
4361 #ifndef DISASM_ONLY
4363 0ULL,
4364 0xfbfff80000000000ULL,
4365 0ULL,
4366 0ULL,
4367 0ULL
4370 -1ULL,
4371 0x400b800000000000ULL,
4372 -1ULL,
4373 -1ULL,
4374 -1ULL
4376 #endif
4378 { "nop", TILEPRO_OPC_NOP, 0xf, 0, TREG_ZERO, 1,
4379 { { }, { }, { }, { }, { 0, } },
4380 #ifndef DISASM_ONLY
4382 0x8000000077fff000ULL,
4383 0xfbfff80000000000ULL,
4384 0x80000000780ff000ULL,
4385 0xf807f80000000000ULL,
4386 0ULL
4389 0x0000000070166000ULL,
4390 0x400b880000000000ULL,
4391 0x80000000680a6000ULL,
4392 0xd805180000000000ULL,
4393 -1ULL
4395 #endif
4397 { "nor", TILEPRO_OPC_NOR, 0xf, 3, TREG_ZERO, 1,
4398 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4399 #ifndef DISASM_ONLY
4401 0x800000007ffc0000ULL,
4402 0xfffe000000000000ULL,
4403 0x80000000780c0000ULL,
4404 0xf806000000000000ULL,
4405 0ULL
4408 0x0000000000c80000ULL,
4409 0x0830000000000000ULL,
4410 0x8000000018040000ULL,
4411 0x9802000000000000ULL,
4412 -1ULL
4414 #endif
4416 { "nor.sn", TILEPRO_OPC_NOR_SN, 0x3, 3, TREG_SN, 1,
4417 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4418 #ifndef DISASM_ONLY
4420 0x800000007ffc0000ULL,
4421 0xfffe000000000000ULL,
4422 0ULL,
4423 0ULL,
4424 0ULL
4427 0x0000000008c80000ULL,
4428 0x0c30000000000000ULL,
4429 -1ULL,
4430 -1ULL,
4431 -1ULL
4433 #endif
4435 { "or", TILEPRO_OPC_OR, 0xf, 3, TREG_ZERO, 1,
4436 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4437 #ifndef DISASM_ONLY
4439 0x800000007ffc0000ULL,
4440 0xfffe000000000000ULL,
4441 0x80000000780c0000ULL,
4442 0xf806000000000000ULL,
4443 0ULL
4446 0x0000000000cc0000ULL,
4447 0x0832000000000000ULL,
4448 0x8000000018080000ULL,
4449 0x9804000000000000ULL,
4450 -1ULL
4452 #endif
4454 { "or.sn", TILEPRO_OPC_OR_SN, 0x3, 3, TREG_SN, 1,
4455 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4456 #ifndef DISASM_ONLY
4458 0x800000007ffc0000ULL,
4459 0xfffe000000000000ULL,
4460 0ULL,
4461 0ULL,
4462 0ULL
4465 0x0000000008cc0000ULL,
4466 0x0c32000000000000ULL,
4467 -1ULL,
4468 -1ULL,
4469 -1ULL
4471 #endif
4473 { "ori", TILEPRO_OPC_ORI, 0xf, 3, TREG_ZERO, 1,
4474 { { 7, 8, 0 }, { 9, 10, 1 }, { 11, 12, 2 }, { 13, 14, 3 }, { 0, } },
4475 #ifndef DISASM_ONLY
4477 0x800000007ff00000ULL,
4478 0xfff8000000000000ULL,
4479 0x8000000078000000ULL,
4480 0xf800000000000000ULL,
4481 0ULL
4484 0x0000000040800000ULL,
4485 0x3058000000000000ULL,
4486 0x8000000058000000ULL,
4487 0xc800000000000000ULL,
4488 -1ULL
4490 #endif
4492 { "ori.sn", TILEPRO_OPC_ORI_SN, 0x3, 3, TREG_SN, 1,
4493 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
4494 #ifndef DISASM_ONLY
4496 0x800000007ff00000ULL,
4497 0xfff8000000000000ULL,
4498 0ULL,
4499 0ULL,
4500 0ULL
4503 0x0000000048800000ULL,
4504 0x3458000000000000ULL,
4505 -1ULL,
4506 -1ULL,
4507 -1ULL
4509 #endif
4511 { "packbs_u", TILEPRO_OPC_PACKBS_U, 0x3, 3, TREG_ZERO, 1,
4512 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4513 #ifndef DISASM_ONLY
4515 0x800000007ffc0000ULL,
4516 0xfffe000000000000ULL,
4517 0ULL,
4518 0ULL,
4519 0ULL
4522 0x00000000019c0000ULL,
4523 0x0892000000000000ULL,
4524 -1ULL,
4525 -1ULL,
4526 -1ULL
4528 #endif
4530 { "packbs_u.sn", TILEPRO_OPC_PACKBS_U_SN, 0x3, 3, TREG_SN, 1,
4531 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4532 #ifndef DISASM_ONLY
4534 0x800000007ffc0000ULL,
4535 0xfffe000000000000ULL,
4536 0ULL,
4537 0ULL,
4538 0ULL
4541 0x00000000099c0000ULL,
4542 0x0c92000000000000ULL,
4543 -1ULL,
4544 -1ULL,
4545 -1ULL
4547 #endif
4549 { "packhb", TILEPRO_OPC_PACKHB, 0x3, 3, TREG_ZERO, 1,
4550 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4551 #ifndef DISASM_ONLY
4553 0x800000007ffc0000ULL,
4554 0xfffe000000000000ULL,
4555 0ULL,
4556 0ULL,
4557 0ULL
4560 0x0000000000d00000ULL,
4561 0x0834000000000000ULL,
4562 -1ULL,
4563 -1ULL,
4564 -1ULL
4566 #endif
4568 { "packhb.sn", TILEPRO_OPC_PACKHB_SN, 0x3, 3, TREG_SN, 1,
4569 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4570 #ifndef DISASM_ONLY
4572 0x800000007ffc0000ULL,
4573 0xfffe000000000000ULL,
4574 0ULL,
4575 0ULL,
4576 0ULL
4579 0x0000000008d00000ULL,
4580 0x0c34000000000000ULL,
4581 -1ULL,
4582 -1ULL,
4583 -1ULL
4585 #endif
4587 { "packhs", TILEPRO_OPC_PACKHS, 0x3, 3, TREG_ZERO, 1,
4588 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4589 #ifndef DISASM_ONLY
4591 0x800000007ffc0000ULL,
4592 0xfffe000000000000ULL,
4593 0ULL,
4594 0ULL,
4595 0ULL
4598 0x0000000001980000ULL,
4599 0x0890000000000000ULL,
4600 -1ULL,
4601 -1ULL,
4602 -1ULL
4604 #endif
4606 { "packhs.sn", TILEPRO_OPC_PACKHS_SN, 0x3, 3, TREG_SN, 1,
4607 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4608 #ifndef DISASM_ONLY
4610 0x800000007ffc0000ULL,
4611 0xfffe000000000000ULL,
4612 0ULL,
4613 0ULL,
4614 0ULL
4617 0x0000000009980000ULL,
4618 0x0c90000000000000ULL,
4619 -1ULL,
4620 -1ULL,
4621 -1ULL
4623 #endif
4625 { "packlb", TILEPRO_OPC_PACKLB, 0x3, 3, TREG_ZERO, 1,
4626 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4627 #ifndef DISASM_ONLY
4629 0x800000007ffc0000ULL,
4630 0xfffe000000000000ULL,
4631 0ULL,
4632 0ULL,
4633 0ULL
4636 0x0000000000d40000ULL,
4637 0x0836000000000000ULL,
4638 -1ULL,
4639 -1ULL,
4640 -1ULL
4642 #endif
4644 { "packlb.sn", TILEPRO_OPC_PACKLB_SN, 0x3, 3, TREG_SN, 1,
4645 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4646 #ifndef DISASM_ONLY
4648 0x800000007ffc0000ULL,
4649 0xfffe000000000000ULL,
4650 0ULL,
4651 0ULL,
4652 0ULL
4655 0x0000000008d40000ULL,
4656 0x0c36000000000000ULL,
4657 -1ULL,
4658 -1ULL,
4659 -1ULL
4661 #endif
4663 { "pcnt", TILEPRO_OPC_PCNT, 0x5, 2, TREG_ZERO, 1,
4664 { { 7, 8 }, { 0, }, { 11, 12 }, { 0, }, { 0, } },
4665 #ifndef DISASM_ONLY
4667 0x800000007ffff000ULL,
4668 0ULL,
4669 0x80000000780ff000ULL,
4670 0ULL,
4671 0ULL
4674 0x0000000070167000ULL,
4675 -1ULL,
4676 0x80000000680a7000ULL,
4677 -1ULL,
4678 -1ULL
4680 #endif
4682 { "pcnt.sn", TILEPRO_OPC_PCNT_SN, 0x1, 2, TREG_SN, 1,
4683 { { 7, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
4684 #ifndef DISASM_ONLY
4686 0x800000007ffff000ULL,
4687 0ULL,
4688 0ULL,
4689 0ULL,
4690 0ULL
4693 0x0000000078167000ULL,
4694 -1ULL,
4695 -1ULL,
4696 -1ULL,
4697 -1ULL
4699 #endif
4701 { "rl", TILEPRO_OPC_RL, 0xf, 3, TREG_ZERO, 1,
4702 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4703 #ifndef DISASM_ONLY
4705 0x800000007ffc0000ULL,
4706 0xfffe000000000000ULL,
4707 0x80000000780c0000ULL,
4708 0xf806000000000000ULL,
4709 0ULL
4712 0x0000000000d80000ULL,
4713 0x0838000000000000ULL,
4714 0x8000000020000000ULL,
4715 0xa000000000000000ULL,
4716 -1ULL
4718 #endif
4720 { "rl.sn", TILEPRO_OPC_RL_SN, 0x3, 3, TREG_SN, 1,
4721 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4722 #ifndef DISASM_ONLY
4724 0x800000007ffc0000ULL,
4725 0xfffe000000000000ULL,
4726 0ULL,
4727 0ULL,
4728 0ULL
4731 0x0000000008d80000ULL,
4732 0x0c38000000000000ULL,
4733 -1ULL,
4734 -1ULL,
4735 -1ULL
4737 #endif
4739 { "rli", TILEPRO_OPC_RLI, 0xf, 3, TREG_ZERO, 1,
4740 { { 7, 8, 32 }, { 9, 10, 33 }, { 11, 12, 34 }, { 13, 14, 35 }, { 0, } },
4741 #ifndef DISASM_ONLY
4743 0x800000007ffe0000ULL,
4744 0xffff000000000000ULL,
4745 0x80000000780e0000ULL,
4746 0xf807000000000000ULL,
4747 0ULL
4750 0x0000000070020000ULL,
4751 0x4001000000000000ULL,
4752 0x8000000068020000ULL,
4753 0xd801000000000000ULL,
4754 -1ULL
4756 #endif
4758 { "rli.sn", TILEPRO_OPC_RLI_SN, 0x3, 3, TREG_SN, 1,
4759 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
4760 #ifndef DISASM_ONLY
4762 0x800000007ffe0000ULL,
4763 0xffff000000000000ULL,
4764 0ULL,
4765 0ULL,
4766 0ULL
4769 0x0000000078020000ULL,
4770 0x4401000000000000ULL,
4771 -1ULL,
4772 -1ULL,
4773 -1ULL
4775 #endif
4777 { "s1a", TILEPRO_OPC_S1A, 0xf, 3, TREG_ZERO, 1,
4778 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4779 #ifndef DISASM_ONLY
4781 0x800000007ffc0000ULL,
4782 0xfffe000000000000ULL,
4783 0x80000000780c0000ULL,
4784 0xf806000000000000ULL,
4785 0ULL
4788 0x0000000000dc0000ULL,
4789 0x083a000000000000ULL,
4790 0x8000000008040000ULL,
4791 0x8802000000000000ULL,
4792 -1ULL
4794 #endif
4796 { "s1a.sn", TILEPRO_OPC_S1A_SN, 0x3, 3, TREG_SN, 1,
4797 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4798 #ifndef DISASM_ONLY
4800 0x800000007ffc0000ULL,
4801 0xfffe000000000000ULL,
4802 0ULL,
4803 0ULL,
4804 0ULL
4807 0x0000000008dc0000ULL,
4808 0x0c3a000000000000ULL,
4809 -1ULL,
4810 -1ULL,
4811 -1ULL
4813 #endif
4815 { "s2a", TILEPRO_OPC_S2A, 0xf, 3, TREG_ZERO, 1,
4816 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4817 #ifndef DISASM_ONLY
4819 0x800000007ffc0000ULL,
4820 0xfffe000000000000ULL,
4821 0x80000000780c0000ULL,
4822 0xf806000000000000ULL,
4823 0ULL
4826 0x0000000000e00000ULL,
4827 0x083c000000000000ULL,
4828 0x8000000008080000ULL,
4829 0x8804000000000000ULL,
4830 -1ULL
4832 #endif
4834 { "s2a.sn", TILEPRO_OPC_S2A_SN, 0x3, 3, TREG_SN, 1,
4835 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4836 #ifndef DISASM_ONLY
4838 0x800000007ffc0000ULL,
4839 0xfffe000000000000ULL,
4840 0ULL,
4841 0ULL,
4842 0ULL
4845 0x0000000008e00000ULL,
4846 0x0c3c000000000000ULL,
4847 -1ULL,
4848 -1ULL,
4849 -1ULL
4851 #endif
4853 { "s3a", TILEPRO_OPC_S3A, 0xf, 3, TREG_ZERO, 1,
4854 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
4855 #ifndef DISASM_ONLY
4857 0x800000007ffc0000ULL,
4858 0xfffe000000000000ULL,
4859 0x80000000780c0000ULL,
4860 0xf806000000000000ULL,
4861 0ULL
4864 0x0000000000e40000ULL,
4865 0x083e000000000000ULL,
4866 0x8000000030040000ULL,
4867 0xb002000000000000ULL,
4868 -1ULL
4870 #endif
4872 { "s3a.sn", TILEPRO_OPC_S3A_SN, 0x3, 3, TREG_SN, 1,
4873 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
4874 #ifndef DISASM_ONLY
4876 0x800000007ffc0000ULL,
4877 0xfffe000000000000ULL,
4878 0ULL,
4879 0ULL,
4880 0ULL
4883 0x0000000008e40000ULL,
4884 0x0c3e000000000000ULL,
4885 -1ULL,
4886 -1ULL,
4887 -1ULL
4889 #endif
4891 { "sadab_u", TILEPRO_OPC_SADAB_U, 0x1, 3, TREG_ZERO, 1,
4892 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4893 #ifndef DISASM_ONLY
4895 0x800000007ffc0000ULL,
4896 0ULL,
4897 0ULL,
4898 0ULL,
4899 0ULL
4902 0x0000000000e80000ULL,
4903 -1ULL,
4904 -1ULL,
4905 -1ULL,
4906 -1ULL
4908 #endif
4910 { "sadab_u.sn", TILEPRO_OPC_SADAB_U_SN, 0x1, 3, TREG_SN, 1,
4911 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4912 #ifndef DISASM_ONLY
4914 0x800000007ffc0000ULL,
4915 0ULL,
4916 0ULL,
4917 0ULL,
4918 0ULL
4921 0x0000000008e80000ULL,
4922 -1ULL,
4923 -1ULL,
4924 -1ULL,
4925 -1ULL
4927 #endif
4929 { "sadah", TILEPRO_OPC_SADAH, 0x1, 3, TREG_ZERO, 1,
4930 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4931 #ifndef DISASM_ONLY
4933 0x800000007ffc0000ULL,
4934 0ULL,
4935 0ULL,
4936 0ULL,
4937 0ULL
4940 0x0000000000ec0000ULL,
4941 -1ULL,
4942 -1ULL,
4943 -1ULL,
4944 -1ULL
4946 #endif
4948 { "sadah.sn", TILEPRO_OPC_SADAH_SN, 0x1, 3, TREG_SN, 1,
4949 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4950 #ifndef DISASM_ONLY
4952 0x800000007ffc0000ULL,
4953 0ULL,
4954 0ULL,
4955 0ULL,
4956 0ULL
4959 0x0000000008ec0000ULL,
4960 -1ULL,
4961 -1ULL,
4962 -1ULL,
4963 -1ULL
4965 #endif
4967 { "sadah_u", TILEPRO_OPC_SADAH_U, 0x1, 3, TREG_ZERO, 1,
4968 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4969 #ifndef DISASM_ONLY
4971 0x800000007ffc0000ULL,
4972 0ULL,
4973 0ULL,
4974 0ULL,
4975 0ULL
4978 0x0000000000f00000ULL,
4979 -1ULL,
4980 -1ULL,
4981 -1ULL,
4982 -1ULL
4984 #endif
4986 { "sadah_u.sn", TILEPRO_OPC_SADAH_U_SN, 0x1, 3, TREG_SN, 1,
4987 { { 21, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
4988 #ifndef DISASM_ONLY
4990 0x800000007ffc0000ULL,
4991 0ULL,
4992 0ULL,
4993 0ULL,
4994 0ULL
4997 0x0000000008f00000ULL,
4998 -1ULL,
4999 -1ULL,
5000 -1ULL,
5001 -1ULL
5003 #endif
5005 { "sadb_u", TILEPRO_OPC_SADB_U, 0x1, 3, TREG_ZERO, 1,
5006 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
5007 #ifndef DISASM_ONLY
5009 0x800000007ffc0000ULL,
5010 0ULL,
5011 0ULL,
5012 0ULL,
5013 0ULL
5016 0x0000000000f40000ULL,
5017 -1ULL,
5018 -1ULL,
5019 -1ULL,
5020 -1ULL
5022 #endif
5024 { "sadb_u.sn", TILEPRO_OPC_SADB_U_SN, 0x1, 3, TREG_SN, 1,
5025 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
5026 #ifndef DISASM_ONLY
5028 0x800000007ffc0000ULL,
5029 0ULL,
5030 0ULL,
5031 0ULL,
5032 0ULL
5035 0x0000000008f40000ULL,
5036 -1ULL,
5037 -1ULL,
5038 -1ULL,
5039 -1ULL
5041 #endif
5043 { "sadh", TILEPRO_OPC_SADH, 0x1, 3, TREG_ZERO, 1,
5044 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
5045 #ifndef DISASM_ONLY
5047 0x800000007ffc0000ULL,
5048 0ULL,
5049 0ULL,
5050 0ULL,
5051 0ULL
5054 0x0000000000f80000ULL,
5055 -1ULL,
5056 -1ULL,
5057 -1ULL,
5058 -1ULL
5060 #endif
5062 { "sadh.sn", TILEPRO_OPC_SADH_SN, 0x1, 3, TREG_SN, 1,
5063 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
5064 #ifndef DISASM_ONLY
5066 0x800000007ffc0000ULL,
5067 0ULL,
5068 0ULL,
5069 0ULL,
5070 0ULL
5073 0x0000000008f80000ULL,
5074 -1ULL,
5075 -1ULL,
5076 -1ULL,
5077 -1ULL
5079 #endif
5081 { "sadh_u", TILEPRO_OPC_SADH_U, 0x1, 3, TREG_ZERO, 1,
5082 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
5083 #ifndef DISASM_ONLY
5085 0x800000007ffc0000ULL,
5086 0ULL,
5087 0ULL,
5088 0ULL,
5089 0ULL
5092 0x0000000000fc0000ULL,
5093 -1ULL,
5094 -1ULL,
5095 -1ULL,
5096 -1ULL
5098 #endif
5100 { "sadh_u.sn", TILEPRO_OPC_SADH_U_SN, 0x1, 3, TREG_SN, 1,
5101 { { 7, 8, 16 }, { 0, }, { 0, }, { 0, }, { 0, } },
5102 #ifndef DISASM_ONLY
5104 0x800000007ffc0000ULL,
5105 0ULL,
5106 0ULL,
5107 0ULL,
5108 0ULL
5111 0x0000000008fc0000ULL,
5112 -1ULL,
5113 -1ULL,
5114 -1ULL,
5115 -1ULL
5117 #endif
5119 { "sb", TILEPRO_OPC_SB, 0x12, 2, TREG_ZERO, 1,
5120 { { 0, }, { 10, 17 }, { 0, }, { 0, }, { 15, 36 } },
5121 #ifndef DISASM_ONLY
5123 0ULL,
5124 0xfbfe000000000000ULL,
5125 0ULL,
5126 0ULL,
5127 0x8700000000000000ULL
5130 -1ULL,
5131 0x0840000000000000ULL,
5132 -1ULL,
5133 -1ULL,
5134 0x8500000000000000ULL
5136 #endif
5138 { "sbadd", TILEPRO_OPC_SBADD, 0x2, 3, TREG_ZERO, 1,
5139 { { 0, }, { 24, 17, 37 }, { 0, }, { 0, }, { 0, } },
5140 #ifndef DISASM_ONLY
5142 0ULL,
5143 0xfbf8000000000000ULL,
5144 0ULL,
5145 0ULL,
5146 0ULL
5149 -1ULL,
5150 0x30e0000000000000ULL,
5151 -1ULL,
5152 -1ULL,
5153 -1ULL
5155 #endif
5157 { "seq", TILEPRO_OPC_SEQ, 0xf, 3, TREG_ZERO, 1,
5158 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
5159 #ifndef DISASM_ONLY
5161 0x800000007ffc0000ULL,
5162 0xfffe000000000000ULL,
5163 0x80000000780c0000ULL,
5164 0xf806000000000000ULL,
5165 0ULL
5168 0x0000000001080000ULL,
5169 0x0846000000000000ULL,
5170 0x8000000030080000ULL,
5171 0xb004000000000000ULL,
5172 -1ULL
5174 #endif
5176 { "seq.sn", TILEPRO_OPC_SEQ_SN, 0x3, 3, TREG_SN, 1,
5177 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5178 #ifndef DISASM_ONLY
5180 0x800000007ffc0000ULL,
5181 0xfffe000000000000ULL,
5182 0ULL,
5183 0ULL,
5184 0ULL
5187 0x0000000009080000ULL,
5188 0x0c46000000000000ULL,
5189 -1ULL,
5190 -1ULL,
5191 -1ULL
5193 #endif
5195 { "seqb", TILEPRO_OPC_SEQB, 0x3, 3, TREG_ZERO, 1,
5196 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5197 #ifndef DISASM_ONLY
5199 0x800000007ffc0000ULL,
5200 0xfffe000000000000ULL,
5201 0ULL,
5202 0ULL,
5203 0ULL
5206 0x0000000001000000ULL,
5207 0x0842000000000000ULL,
5208 -1ULL,
5209 -1ULL,
5210 -1ULL
5212 #endif
5214 { "seqb.sn", TILEPRO_OPC_SEQB_SN, 0x3, 3, TREG_SN, 1,
5215 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5216 #ifndef DISASM_ONLY
5218 0x800000007ffc0000ULL,
5219 0xfffe000000000000ULL,
5220 0ULL,
5221 0ULL,
5222 0ULL
5225 0x0000000009000000ULL,
5226 0x0c42000000000000ULL,
5227 -1ULL,
5228 -1ULL,
5229 -1ULL
5231 #endif
5233 { "seqh", TILEPRO_OPC_SEQH, 0x3, 3, TREG_ZERO, 1,
5234 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5235 #ifndef DISASM_ONLY
5237 0x800000007ffc0000ULL,
5238 0xfffe000000000000ULL,
5239 0ULL,
5240 0ULL,
5241 0ULL
5244 0x0000000001040000ULL,
5245 0x0844000000000000ULL,
5246 -1ULL,
5247 -1ULL,
5248 -1ULL
5250 #endif
5252 { "seqh.sn", TILEPRO_OPC_SEQH_SN, 0x3, 3, TREG_SN, 1,
5253 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5254 #ifndef DISASM_ONLY
5256 0x800000007ffc0000ULL,
5257 0xfffe000000000000ULL,
5258 0ULL,
5259 0ULL,
5260 0ULL
5263 0x0000000009040000ULL,
5264 0x0c44000000000000ULL,
5265 -1ULL,
5266 -1ULL,
5267 -1ULL
5269 #endif
5271 { "seqi", TILEPRO_OPC_SEQI, 0xf, 3, TREG_ZERO, 1,
5272 { { 7, 8, 0 }, { 9, 10, 1 }, { 11, 12, 2 }, { 13, 14, 3 }, { 0, } },
5273 #ifndef DISASM_ONLY
5275 0x800000007ff00000ULL,
5276 0xfff8000000000000ULL,
5277 0x8000000078000000ULL,
5278 0xf800000000000000ULL,
5279 0ULL
5282 0x0000000040b00000ULL,
5283 0x3070000000000000ULL,
5284 0x8000000060000000ULL,
5285 0xd000000000000000ULL,
5286 -1ULL
5288 #endif
5290 { "seqi.sn", TILEPRO_OPC_SEQI_SN, 0x3, 3, TREG_SN, 1,
5291 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
5292 #ifndef DISASM_ONLY
5294 0x800000007ff00000ULL,
5295 0xfff8000000000000ULL,
5296 0ULL,
5297 0ULL,
5298 0ULL
5301 0x0000000048b00000ULL,
5302 0x3470000000000000ULL,
5303 -1ULL,
5304 -1ULL,
5305 -1ULL
5307 #endif
5309 { "seqib", TILEPRO_OPC_SEQIB, 0x3, 3, TREG_ZERO, 1,
5310 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
5311 #ifndef DISASM_ONLY
5313 0x800000007ff00000ULL,
5314 0xfff8000000000000ULL,
5315 0ULL,
5316 0ULL,
5317 0ULL
5320 0x0000000040900000ULL,
5321 0x3060000000000000ULL,
5322 -1ULL,
5323 -1ULL,
5324 -1ULL
5326 #endif
5328 { "seqib.sn", TILEPRO_OPC_SEQIB_SN, 0x3, 3, TREG_SN, 1,
5329 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
5330 #ifndef DISASM_ONLY
5332 0x800000007ff00000ULL,
5333 0xfff8000000000000ULL,
5334 0ULL,
5335 0ULL,
5336 0ULL
5339 0x0000000048900000ULL,
5340 0x3460000000000000ULL,
5341 -1ULL,
5342 -1ULL,
5343 -1ULL
5345 #endif
5347 { "seqih", TILEPRO_OPC_SEQIH, 0x3, 3, TREG_ZERO, 1,
5348 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
5349 #ifndef DISASM_ONLY
5351 0x800000007ff00000ULL,
5352 0xfff8000000000000ULL,
5353 0ULL,
5354 0ULL,
5355 0ULL
5358 0x0000000040a00000ULL,
5359 0x3068000000000000ULL,
5360 -1ULL,
5361 -1ULL,
5362 -1ULL
5364 #endif
5366 { "seqih.sn", TILEPRO_OPC_SEQIH_SN, 0x3, 3, TREG_SN, 1,
5367 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
5368 #ifndef DISASM_ONLY
5370 0x800000007ff00000ULL,
5371 0xfff8000000000000ULL,
5372 0ULL,
5373 0ULL,
5374 0ULL
5377 0x0000000048a00000ULL,
5378 0x3468000000000000ULL,
5379 -1ULL,
5380 -1ULL,
5381 -1ULL
5383 #endif
5385 { "sh", TILEPRO_OPC_SH, 0x12, 2, TREG_ZERO, 1,
5386 { { 0, }, { 10, 17 }, { 0, }, { 0, }, { 15, 36 } },
5387 #ifndef DISASM_ONLY
5389 0ULL,
5390 0xfbfe000000000000ULL,
5391 0ULL,
5392 0ULL,
5393 0x8700000000000000ULL
5396 -1ULL,
5397 0x0854000000000000ULL,
5398 -1ULL,
5399 -1ULL,
5400 0x8600000000000000ULL
5402 #endif
5404 { "shadd", TILEPRO_OPC_SHADD, 0x2, 3, TREG_ZERO, 1,
5405 { { 0, }, { 24, 17, 37 }, { 0, }, { 0, }, { 0, } },
5406 #ifndef DISASM_ONLY
5408 0ULL,
5409 0xfbf8000000000000ULL,
5410 0ULL,
5411 0ULL,
5412 0ULL
5415 -1ULL,
5416 0x30e8000000000000ULL,
5417 -1ULL,
5418 -1ULL,
5419 -1ULL
5421 #endif
5423 { "shl", TILEPRO_OPC_SHL, 0xf, 3, TREG_ZERO, 1,
5424 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
5425 #ifndef DISASM_ONLY
5427 0x800000007ffc0000ULL,
5428 0xfffe000000000000ULL,
5429 0x80000000780c0000ULL,
5430 0xf806000000000000ULL,
5431 0ULL
5434 0x0000000001140000ULL,
5435 0x084c000000000000ULL,
5436 0x8000000020040000ULL,
5437 0xa002000000000000ULL,
5438 -1ULL
5440 #endif
5442 { "shl.sn", TILEPRO_OPC_SHL_SN, 0x3, 3, TREG_SN, 1,
5443 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5444 #ifndef DISASM_ONLY
5446 0x800000007ffc0000ULL,
5447 0xfffe000000000000ULL,
5448 0ULL,
5449 0ULL,
5450 0ULL
5453 0x0000000009140000ULL,
5454 0x0c4c000000000000ULL,
5455 -1ULL,
5456 -1ULL,
5457 -1ULL
5459 #endif
5461 { "shlb", TILEPRO_OPC_SHLB, 0x3, 3, TREG_ZERO, 1,
5462 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5463 #ifndef DISASM_ONLY
5465 0x800000007ffc0000ULL,
5466 0xfffe000000000000ULL,
5467 0ULL,
5468 0ULL,
5469 0ULL
5472 0x00000000010c0000ULL,
5473 0x0848000000000000ULL,
5474 -1ULL,
5475 -1ULL,
5476 -1ULL
5478 #endif
5480 { "shlb.sn", TILEPRO_OPC_SHLB_SN, 0x3, 3, TREG_SN, 1,
5481 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5482 #ifndef DISASM_ONLY
5484 0x800000007ffc0000ULL,
5485 0xfffe000000000000ULL,
5486 0ULL,
5487 0ULL,
5488 0ULL
5491 0x00000000090c0000ULL,
5492 0x0c48000000000000ULL,
5493 -1ULL,
5494 -1ULL,
5495 -1ULL
5497 #endif
5499 { "shlh", TILEPRO_OPC_SHLH, 0x3, 3, TREG_ZERO, 1,
5500 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5501 #ifndef DISASM_ONLY
5503 0x800000007ffc0000ULL,
5504 0xfffe000000000000ULL,
5505 0ULL,
5506 0ULL,
5507 0ULL
5510 0x0000000001100000ULL,
5511 0x084a000000000000ULL,
5512 -1ULL,
5513 -1ULL,
5514 -1ULL
5516 #endif
5518 { "shlh.sn", TILEPRO_OPC_SHLH_SN, 0x3, 3, TREG_SN, 1,
5519 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5520 #ifndef DISASM_ONLY
5522 0x800000007ffc0000ULL,
5523 0xfffe000000000000ULL,
5524 0ULL,
5525 0ULL,
5526 0ULL
5529 0x0000000009100000ULL,
5530 0x0c4a000000000000ULL,
5531 -1ULL,
5532 -1ULL,
5533 -1ULL
5535 #endif
5537 { "shli", TILEPRO_OPC_SHLI, 0xf, 3, TREG_ZERO, 1,
5538 { { 7, 8, 32 }, { 9, 10, 33 }, { 11, 12, 34 }, { 13, 14, 35 }, { 0, } },
5539 #ifndef DISASM_ONLY
5541 0x800000007ffe0000ULL,
5542 0xffff000000000000ULL,
5543 0x80000000780e0000ULL,
5544 0xf807000000000000ULL,
5545 0ULL
5548 0x0000000070080000ULL,
5549 0x4004000000000000ULL,
5550 0x8000000068040000ULL,
5551 0xd802000000000000ULL,
5552 -1ULL
5554 #endif
5556 { "shli.sn", TILEPRO_OPC_SHLI_SN, 0x3, 3, TREG_SN, 1,
5557 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5558 #ifndef DISASM_ONLY
5560 0x800000007ffe0000ULL,
5561 0xffff000000000000ULL,
5562 0ULL,
5563 0ULL,
5564 0ULL
5567 0x0000000078080000ULL,
5568 0x4404000000000000ULL,
5569 -1ULL,
5570 -1ULL,
5571 -1ULL
5573 #endif
5575 { "shlib", TILEPRO_OPC_SHLIB, 0x3, 3, TREG_ZERO, 1,
5576 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5577 #ifndef DISASM_ONLY
5579 0x800000007ffe0000ULL,
5580 0xffff000000000000ULL,
5581 0ULL,
5582 0ULL,
5583 0ULL
5586 0x0000000070040000ULL,
5587 0x4002000000000000ULL,
5588 -1ULL,
5589 -1ULL,
5590 -1ULL
5592 #endif
5594 { "shlib.sn", TILEPRO_OPC_SHLIB_SN, 0x3, 3, TREG_SN, 1,
5595 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5596 #ifndef DISASM_ONLY
5598 0x800000007ffe0000ULL,
5599 0xffff000000000000ULL,
5600 0ULL,
5601 0ULL,
5602 0ULL
5605 0x0000000078040000ULL,
5606 0x4402000000000000ULL,
5607 -1ULL,
5608 -1ULL,
5609 -1ULL
5611 #endif
5613 { "shlih", TILEPRO_OPC_SHLIH, 0x3, 3, TREG_ZERO, 1,
5614 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5615 #ifndef DISASM_ONLY
5617 0x800000007ffe0000ULL,
5618 0xffff000000000000ULL,
5619 0ULL,
5620 0ULL,
5621 0ULL
5624 0x0000000070060000ULL,
5625 0x4003000000000000ULL,
5626 -1ULL,
5627 -1ULL,
5628 -1ULL
5630 #endif
5632 { "shlih.sn", TILEPRO_OPC_SHLIH_SN, 0x3, 3, TREG_SN, 1,
5633 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5634 #ifndef DISASM_ONLY
5636 0x800000007ffe0000ULL,
5637 0xffff000000000000ULL,
5638 0ULL,
5639 0ULL,
5640 0ULL
5643 0x0000000078060000ULL,
5644 0x4403000000000000ULL,
5645 -1ULL,
5646 -1ULL,
5647 -1ULL
5649 #endif
5651 { "shr", TILEPRO_OPC_SHR, 0xf, 3, TREG_ZERO, 1,
5652 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
5653 #ifndef DISASM_ONLY
5655 0x800000007ffc0000ULL,
5656 0xfffe000000000000ULL,
5657 0x80000000780c0000ULL,
5658 0xf806000000000000ULL,
5659 0ULL
5662 0x0000000001200000ULL,
5663 0x0852000000000000ULL,
5664 0x8000000020080000ULL,
5665 0xa004000000000000ULL,
5666 -1ULL
5668 #endif
5670 { "shr.sn", TILEPRO_OPC_SHR_SN, 0x3, 3, TREG_SN, 1,
5671 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5672 #ifndef DISASM_ONLY
5674 0x800000007ffc0000ULL,
5675 0xfffe000000000000ULL,
5676 0ULL,
5677 0ULL,
5678 0ULL
5681 0x0000000009200000ULL,
5682 0x0c52000000000000ULL,
5683 -1ULL,
5684 -1ULL,
5685 -1ULL
5687 #endif
5689 { "shrb", TILEPRO_OPC_SHRB, 0x3, 3, TREG_ZERO, 1,
5690 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5691 #ifndef DISASM_ONLY
5693 0x800000007ffc0000ULL,
5694 0xfffe000000000000ULL,
5695 0ULL,
5696 0ULL,
5697 0ULL
5700 0x0000000001180000ULL,
5701 0x084e000000000000ULL,
5702 -1ULL,
5703 -1ULL,
5704 -1ULL
5706 #endif
5708 { "shrb.sn", TILEPRO_OPC_SHRB_SN, 0x3, 3, TREG_SN, 1,
5709 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5710 #ifndef DISASM_ONLY
5712 0x800000007ffc0000ULL,
5713 0xfffe000000000000ULL,
5714 0ULL,
5715 0ULL,
5716 0ULL
5719 0x0000000009180000ULL,
5720 0x0c4e000000000000ULL,
5721 -1ULL,
5722 -1ULL,
5723 -1ULL
5725 #endif
5727 { "shrh", TILEPRO_OPC_SHRH, 0x3, 3, TREG_ZERO, 1,
5728 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5729 #ifndef DISASM_ONLY
5731 0x800000007ffc0000ULL,
5732 0xfffe000000000000ULL,
5733 0ULL,
5734 0ULL,
5735 0ULL
5738 0x00000000011c0000ULL,
5739 0x0850000000000000ULL,
5740 -1ULL,
5741 -1ULL,
5742 -1ULL
5744 #endif
5746 { "shrh.sn", TILEPRO_OPC_SHRH_SN, 0x3, 3, TREG_SN, 1,
5747 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5748 #ifndef DISASM_ONLY
5750 0x800000007ffc0000ULL,
5751 0xfffe000000000000ULL,
5752 0ULL,
5753 0ULL,
5754 0ULL
5757 0x00000000091c0000ULL,
5758 0x0c50000000000000ULL,
5759 -1ULL,
5760 -1ULL,
5761 -1ULL
5763 #endif
5765 { "shri", TILEPRO_OPC_SHRI, 0xf, 3, TREG_ZERO, 1,
5766 { { 7, 8, 32 }, { 9, 10, 33 }, { 11, 12, 34 }, { 13, 14, 35 }, { 0, } },
5767 #ifndef DISASM_ONLY
5769 0x800000007ffe0000ULL,
5770 0xffff000000000000ULL,
5771 0x80000000780e0000ULL,
5772 0xf807000000000000ULL,
5773 0ULL
5776 0x00000000700e0000ULL,
5777 0x4007000000000000ULL,
5778 0x8000000068060000ULL,
5779 0xd803000000000000ULL,
5780 -1ULL
5782 #endif
5784 { "shri.sn", TILEPRO_OPC_SHRI_SN, 0x3, 3, TREG_SN, 1,
5785 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5786 #ifndef DISASM_ONLY
5788 0x800000007ffe0000ULL,
5789 0xffff000000000000ULL,
5790 0ULL,
5791 0ULL,
5792 0ULL
5795 0x00000000780e0000ULL,
5796 0x4407000000000000ULL,
5797 -1ULL,
5798 -1ULL,
5799 -1ULL
5801 #endif
5803 { "shrib", TILEPRO_OPC_SHRIB, 0x3, 3, TREG_ZERO, 1,
5804 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5805 #ifndef DISASM_ONLY
5807 0x800000007ffe0000ULL,
5808 0xffff000000000000ULL,
5809 0ULL,
5810 0ULL,
5811 0ULL
5814 0x00000000700a0000ULL,
5815 0x4005000000000000ULL,
5816 -1ULL,
5817 -1ULL,
5818 -1ULL
5820 #endif
5822 { "shrib.sn", TILEPRO_OPC_SHRIB_SN, 0x3, 3, TREG_SN, 1,
5823 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5824 #ifndef DISASM_ONLY
5826 0x800000007ffe0000ULL,
5827 0xffff000000000000ULL,
5828 0ULL,
5829 0ULL,
5830 0ULL
5833 0x00000000780a0000ULL,
5834 0x4405000000000000ULL,
5835 -1ULL,
5836 -1ULL,
5837 -1ULL
5839 #endif
5841 { "shrih", TILEPRO_OPC_SHRIH, 0x3, 3, TREG_ZERO, 1,
5842 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5843 #ifndef DISASM_ONLY
5845 0x800000007ffe0000ULL,
5846 0xffff000000000000ULL,
5847 0ULL,
5848 0ULL,
5849 0ULL
5852 0x00000000700c0000ULL,
5853 0x4006000000000000ULL,
5854 -1ULL,
5855 -1ULL,
5856 -1ULL
5858 #endif
5860 { "shrih.sn", TILEPRO_OPC_SHRIH_SN, 0x3, 3, TREG_SN, 1,
5861 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
5862 #ifndef DISASM_ONLY
5864 0x800000007ffe0000ULL,
5865 0xffff000000000000ULL,
5866 0ULL,
5867 0ULL,
5868 0ULL
5871 0x00000000780c0000ULL,
5872 0x4406000000000000ULL,
5873 -1ULL,
5874 -1ULL,
5875 -1ULL
5877 #endif
5879 { "slt", TILEPRO_OPC_SLT, 0xf, 3, TREG_ZERO, 1,
5880 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
5881 #ifndef DISASM_ONLY
5883 0x800000007ffc0000ULL,
5884 0xfffe000000000000ULL,
5885 0x80000000780c0000ULL,
5886 0xf806000000000000ULL,
5887 0ULL
5890 0x00000000014c0000ULL,
5891 0x086a000000000000ULL,
5892 0x8000000028080000ULL,
5893 0xa804000000000000ULL,
5894 -1ULL
5896 #endif
5898 { "slt.sn", TILEPRO_OPC_SLT_SN, 0x3, 3, TREG_SN, 1,
5899 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5900 #ifndef DISASM_ONLY
5902 0x800000007ffc0000ULL,
5903 0xfffe000000000000ULL,
5904 0ULL,
5905 0ULL,
5906 0ULL
5909 0x00000000094c0000ULL,
5910 0x0c6a000000000000ULL,
5911 -1ULL,
5912 -1ULL,
5913 -1ULL
5915 #endif
5917 { "slt_u", TILEPRO_OPC_SLT_U, 0xf, 3, TREG_ZERO, 1,
5918 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
5919 #ifndef DISASM_ONLY
5921 0x800000007ffc0000ULL,
5922 0xfffe000000000000ULL,
5923 0x80000000780c0000ULL,
5924 0xf806000000000000ULL,
5925 0ULL
5928 0x0000000001500000ULL,
5929 0x086c000000000000ULL,
5930 0x80000000280c0000ULL,
5931 0xa806000000000000ULL,
5932 -1ULL
5934 #endif
5936 { "slt_u.sn", TILEPRO_OPC_SLT_U_SN, 0x3, 3, TREG_SN, 1,
5937 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5938 #ifndef DISASM_ONLY
5940 0x800000007ffc0000ULL,
5941 0xfffe000000000000ULL,
5942 0ULL,
5943 0ULL,
5944 0ULL
5947 0x0000000009500000ULL,
5948 0x0c6c000000000000ULL,
5949 -1ULL,
5950 -1ULL,
5951 -1ULL
5953 #endif
5955 { "sltb", TILEPRO_OPC_SLTB, 0x3, 3, TREG_ZERO, 1,
5956 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5957 #ifndef DISASM_ONLY
5959 0x800000007ffc0000ULL,
5960 0xfffe000000000000ULL,
5961 0ULL,
5962 0ULL,
5963 0ULL
5966 0x0000000001240000ULL,
5967 0x0856000000000000ULL,
5968 -1ULL,
5969 -1ULL,
5970 -1ULL
5972 #endif
5974 { "sltb.sn", TILEPRO_OPC_SLTB_SN, 0x3, 3, TREG_SN, 1,
5975 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5976 #ifndef DISASM_ONLY
5978 0x800000007ffc0000ULL,
5979 0xfffe000000000000ULL,
5980 0ULL,
5981 0ULL,
5982 0ULL
5985 0x0000000009240000ULL,
5986 0x0c56000000000000ULL,
5987 -1ULL,
5988 -1ULL,
5989 -1ULL
5991 #endif
5993 { "sltb_u", TILEPRO_OPC_SLTB_U, 0x3, 3, TREG_ZERO, 1,
5994 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
5995 #ifndef DISASM_ONLY
5997 0x800000007ffc0000ULL,
5998 0xfffe000000000000ULL,
5999 0ULL,
6000 0ULL,
6001 0ULL
6004 0x0000000001280000ULL,
6005 0x0858000000000000ULL,
6006 -1ULL,
6007 -1ULL,
6008 -1ULL
6010 #endif
6012 { "sltb_u.sn", TILEPRO_OPC_SLTB_U_SN, 0x3, 3, TREG_SN, 1,
6013 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6014 #ifndef DISASM_ONLY
6016 0x800000007ffc0000ULL,
6017 0xfffe000000000000ULL,
6018 0ULL,
6019 0ULL,
6020 0ULL
6023 0x0000000009280000ULL,
6024 0x0c58000000000000ULL,
6025 -1ULL,
6026 -1ULL,
6027 -1ULL
6029 #endif
6031 { "slte", TILEPRO_OPC_SLTE, 0xf, 3, TREG_ZERO, 1,
6032 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
6033 #ifndef DISASM_ONLY
6035 0x800000007ffc0000ULL,
6036 0xfffe000000000000ULL,
6037 0x80000000780c0000ULL,
6038 0xf806000000000000ULL,
6039 0ULL
6042 0x00000000013c0000ULL,
6043 0x0862000000000000ULL,
6044 0x8000000028000000ULL,
6045 0xa800000000000000ULL,
6046 -1ULL
6048 #endif
6050 { "slte.sn", TILEPRO_OPC_SLTE_SN, 0x3, 3, TREG_SN, 1,
6051 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6052 #ifndef DISASM_ONLY
6054 0x800000007ffc0000ULL,
6055 0xfffe000000000000ULL,
6056 0ULL,
6057 0ULL,
6058 0ULL
6061 0x00000000093c0000ULL,
6062 0x0c62000000000000ULL,
6063 -1ULL,
6064 -1ULL,
6065 -1ULL
6067 #endif
6069 { "slte_u", TILEPRO_OPC_SLTE_U, 0xf, 3, TREG_ZERO, 1,
6070 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
6071 #ifndef DISASM_ONLY
6073 0x800000007ffc0000ULL,
6074 0xfffe000000000000ULL,
6075 0x80000000780c0000ULL,
6076 0xf806000000000000ULL,
6077 0ULL
6080 0x0000000001400000ULL,
6081 0x0864000000000000ULL,
6082 0x8000000028040000ULL,
6083 0xa802000000000000ULL,
6084 -1ULL
6086 #endif
6088 { "slte_u.sn", TILEPRO_OPC_SLTE_U_SN, 0x3, 3, TREG_SN, 1,
6089 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6090 #ifndef DISASM_ONLY
6092 0x800000007ffc0000ULL,
6093 0xfffe000000000000ULL,
6094 0ULL,
6095 0ULL,
6096 0ULL
6099 0x0000000009400000ULL,
6100 0x0c64000000000000ULL,
6101 -1ULL,
6102 -1ULL,
6103 -1ULL
6105 #endif
6107 { "slteb", TILEPRO_OPC_SLTEB, 0x3, 3, TREG_ZERO, 1,
6108 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6109 #ifndef DISASM_ONLY
6111 0x800000007ffc0000ULL,
6112 0xfffe000000000000ULL,
6113 0ULL,
6114 0ULL,
6115 0ULL
6118 0x00000000012c0000ULL,
6119 0x085a000000000000ULL,
6120 -1ULL,
6121 -1ULL,
6122 -1ULL
6124 #endif
6126 { "slteb.sn", TILEPRO_OPC_SLTEB_SN, 0x3, 3, TREG_SN, 1,
6127 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6128 #ifndef DISASM_ONLY
6130 0x800000007ffc0000ULL,
6131 0xfffe000000000000ULL,
6132 0ULL,
6133 0ULL,
6134 0ULL
6137 0x00000000092c0000ULL,
6138 0x0c5a000000000000ULL,
6139 -1ULL,
6140 -1ULL,
6141 -1ULL
6143 #endif
6145 { "slteb_u", TILEPRO_OPC_SLTEB_U, 0x3, 3, TREG_ZERO, 1,
6146 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6147 #ifndef DISASM_ONLY
6149 0x800000007ffc0000ULL,
6150 0xfffe000000000000ULL,
6151 0ULL,
6152 0ULL,
6153 0ULL
6156 0x0000000001300000ULL,
6157 0x085c000000000000ULL,
6158 -1ULL,
6159 -1ULL,
6160 -1ULL
6162 #endif
6164 { "slteb_u.sn", TILEPRO_OPC_SLTEB_U_SN, 0x3, 3, TREG_SN, 1,
6165 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6166 #ifndef DISASM_ONLY
6168 0x800000007ffc0000ULL,
6169 0xfffe000000000000ULL,
6170 0ULL,
6171 0ULL,
6172 0ULL
6175 0x0000000009300000ULL,
6176 0x0c5c000000000000ULL,
6177 -1ULL,
6178 -1ULL,
6179 -1ULL
6181 #endif
6183 { "slteh", TILEPRO_OPC_SLTEH, 0x3, 3, TREG_ZERO, 1,
6184 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6185 #ifndef DISASM_ONLY
6187 0x800000007ffc0000ULL,
6188 0xfffe000000000000ULL,
6189 0ULL,
6190 0ULL,
6191 0ULL
6194 0x0000000001340000ULL,
6195 0x085e000000000000ULL,
6196 -1ULL,
6197 -1ULL,
6198 -1ULL
6200 #endif
6202 { "slteh.sn", TILEPRO_OPC_SLTEH_SN, 0x3, 3, TREG_SN, 1,
6203 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6204 #ifndef DISASM_ONLY
6206 0x800000007ffc0000ULL,
6207 0xfffe000000000000ULL,
6208 0ULL,
6209 0ULL,
6210 0ULL
6213 0x0000000009340000ULL,
6214 0x0c5e000000000000ULL,
6215 -1ULL,
6216 -1ULL,
6217 -1ULL
6219 #endif
6221 { "slteh_u", TILEPRO_OPC_SLTEH_U, 0x3, 3, TREG_ZERO, 1,
6222 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6223 #ifndef DISASM_ONLY
6225 0x800000007ffc0000ULL,
6226 0xfffe000000000000ULL,
6227 0ULL,
6228 0ULL,
6229 0ULL
6232 0x0000000001380000ULL,
6233 0x0860000000000000ULL,
6234 -1ULL,
6235 -1ULL,
6236 -1ULL
6238 #endif
6240 { "slteh_u.sn", TILEPRO_OPC_SLTEH_U_SN, 0x3, 3, TREG_SN, 1,
6241 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6242 #ifndef DISASM_ONLY
6244 0x800000007ffc0000ULL,
6245 0xfffe000000000000ULL,
6246 0ULL,
6247 0ULL,
6248 0ULL
6251 0x0000000009380000ULL,
6252 0x0c60000000000000ULL,
6253 -1ULL,
6254 -1ULL,
6255 -1ULL
6257 #endif
6259 { "slth", TILEPRO_OPC_SLTH, 0x3, 3, TREG_ZERO, 1,
6260 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6261 #ifndef DISASM_ONLY
6263 0x800000007ffc0000ULL,
6264 0xfffe000000000000ULL,
6265 0ULL,
6266 0ULL,
6267 0ULL
6270 0x0000000001440000ULL,
6271 0x0866000000000000ULL,
6272 -1ULL,
6273 -1ULL,
6274 -1ULL
6276 #endif
6278 { "slth.sn", TILEPRO_OPC_SLTH_SN, 0x3, 3, TREG_SN, 1,
6279 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6280 #ifndef DISASM_ONLY
6282 0x800000007ffc0000ULL,
6283 0xfffe000000000000ULL,
6284 0ULL,
6285 0ULL,
6286 0ULL
6289 0x0000000009440000ULL,
6290 0x0c66000000000000ULL,
6291 -1ULL,
6292 -1ULL,
6293 -1ULL
6295 #endif
6297 { "slth_u", TILEPRO_OPC_SLTH_U, 0x3, 3, TREG_ZERO, 1,
6298 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6299 #ifndef DISASM_ONLY
6301 0x800000007ffc0000ULL,
6302 0xfffe000000000000ULL,
6303 0ULL,
6304 0ULL,
6305 0ULL
6308 0x0000000001480000ULL,
6309 0x0868000000000000ULL,
6310 -1ULL,
6311 -1ULL,
6312 -1ULL
6314 #endif
6316 { "slth_u.sn", TILEPRO_OPC_SLTH_U_SN, 0x3, 3, TREG_SN, 1,
6317 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6318 #ifndef DISASM_ONLY
6320 0x800000007ffc0000ULL,
6321 0xfffe000000000000ULL,
6322 0ULL,
6323 0ULL,
6324 0ULL
6327 0x0000000009480000ULL,
6328 0x0c68000000000000ULL,
6329 -1ULL,
6330 -1ULL,
6331 -1ULL
6333 #endif
6335 { "slti", TILEPRO_OPC_SLTI, 0xf, 3, TREG_ZERO, 1,
6336 { { 7, 8, 0 }, { 9, 10, 1 }, { 11, 12, 2 }, { 13, 14, 3 }, { 0, } },
6337 #ifndef DISASM_ONLY
6339 0x800000007ff00000ULL,
6340 0xfff8000000000000ULL,
6341 0x8000000078000000ULL,
6342 0xf800000000000000ULL,
6343 0ULL
6346 0x0000000041000000ULL,
6347 0x3098000000000000ULL,
6348 0x8000000070000000ULL,
6349 0xe000000000000000ULL,
6350 -1ULL
6352 #endif
6354 { "slti.sn", TILEPRO_OPC_SLTI_SN, 0x3, 3, TREG_SN, 1,
6355 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6356 #ifndef DISASM_ONLY
6358 0x800000007ff00000ULL,
6359 0xfff8000000000000ULL,
6360 0ULL,
6361 0ULL,
6362 0ULL
6365 0x0000000049000000ULL,
6366 0x3498000000000000ULL,
6367 -1ULL,
6368 -1ULL,
6369 -1ULL
6371 #endif
6373 { "slti_u", TILEPRO_OPC_SLTI_U, 0xf, 3, TREG_ZERO, 1,
6374 { { 7, 8, 0 }, { 9, 10, 1 }, { 11, 12, 2 }, { 13, 14, 3 }, { 0, } },
6375 #ifndef DISASM_ONLY
6377 0x800000007ff00000ULL,
6378 0xfff8000000000000ULL,
6379 0x8000000078000000ULL,
6380 0xf800000000000000ULL,
6381 0ULL
6384 0x0000000041100000ULL,
6385 0x30a0000000000000ULL,
6386 0x8000000078000000ULL,
6387 0xe800000000000000ULL,
6388 -1ULL
6390 #endif
6392 { "slti_u.sn", TILEPRO_OPC_SLTI_U_SN, 0x3, 3, TREG_SN, 1,
6393 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6394 #ifndef DISASM_ONLY
6396 0x800000007ff00000ULL,
6397 0xfff8000000000000ULL,
6398 0ULL,
6399 0ULL,
6400 0ULL
6403 0x0000000049100000ULL,
6404 0x34a0000000000000ULL,
6405 -1ULL,
6406 -1ULL,
6407 -1ULL
6409 #endif
6411 { "sltib", TILEPRO_OPC_SLTIB, 0x3, 3, TREG_ZERO, 1,
6412 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6413 #ifndef DISASM_ONLY
6415 0x800000007ff00000ULL,
6416 0xfff8000000000000ULL,
6417 0ULL,
6418 0ULL,
6419 0ULL
6422 0x0000000040c00000ULL,
6423 0x3078000000000000ULL,
6424 -1ULL,
6425 -1ULL,
6426 -1ULL
6428 #endif
6430 { "sltib.sn", TILEPRO_OPC_SLTIB_SN, 0x3, 3, TREG_SN, 1,
6431 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6432 #ifndef DISASM_ONLY
6434 0x800000007ff00000ULL,
6435 0xfff8000000000000ULL,
6436 0ULL,
6437 0ULL,
6438 0ULL
6441 0x0000000048c00000ULL,
6442 0x3478000000000000ULL,
6443 -1ULL,
6444 -1ULL,
6445 -1ULL
6447 #endif
6449 { "sltib_u", TILEPRO_OPC_SLTIB_U, 0x3, 3, TREG_ZERO, 1,
6450 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6451 #ifndef DISASM_ONLY
6453 0x800000007ff00000ULL,
6454 0xfff8000000000000ULL,
6455 0ULL,
6456 0ULL,
6457 0ULL
6460 0x0000000040d00000ULL,
6461 0x3080000000000000ULL,
6462 -1ULL,
6463 -1ULL,
6464 -1ULL
6466 #endif
6468 { "sltib_u.sn", TILEPRO_OPC_SLTIB_U_SN, 0x3, 3, TREG_SN, 1,
6469 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6470 #ifndef DISASM_ONLY
6472 0x800000007ff00000ULL,
6473 0xfff8000000000000ULL,
6474 0ULL,
6475 0ULL,
6476 0ULL
6479 0x0000000048d00000ULL,
6480 0x3480000000000000ULL,
6481 -1ULL,
6482 -1ULL,
6483 -1ULL
6485 #endif
6487 { "sltih", TILEPRO_OPC_SLTIH, 0x3, 3, TREG_ZERO, 1,
6488 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6489 #ifndef DISASM_ONLY
6491 0x800000007ff00000ULL,
6492 0xfff8000000000000ULL,
6493 0ULL,
6494 0ULL,
6495 0ULL
6498 0x0000000040e00000ULL,
6499 0x3088000000000000ULL,
6500 -1ULL,
6501 -1ULL,
6502 -1ULL
6504 #endif
6506 { "sltih.sn", TILEPRO_OPC_SLTIH_SN, 0x3, 3, TREG_SN, 1,
6507 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6508 #ifndef DISASM_ONLY
6510 0x800000007ff00000ULL,
6511 0xfff8000000000000ULL,
6512 0ULL,
6513 0ULL,
6514 0ULL
6517 0x0000000048e00000ULL,
6518 0x3488000000000000ULL,
6519 -1ULL,
6520 -1ULL,
6521 -1ULL
6523 #endif
6525 { "sltih_u", TILEPRO_OPC_SLTIH_U, 0x3, 3, TREG_ZERO, 1,
6526 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6527 #ifndef DISASM_ONLY
6529 0x800000007ff00000ULL,
6530 0xfff8000000000000ULL,
6531 0ULL,
6532 0ULL,
6533 0ULL
6536 0x0000000040f00000ULL,
6537 0x3090000000000000ULL,
6538 -1ULL,
6539 -1ULL,
6540 -1ULL
6542 #endif
6544 { "sltih_u.sn", TILEPRO_OPC_SLTIH_U_SN, 0x3, 3, TREG_SN, 1,
6545 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
6546 #ifndef DISASM_ONLY
6548 0x800000007ff00000ULL,
6549 0xfff8000000000000ULL,
6550 0ULL,
6551 0ULL,
6552 0ULL
6555 0x0000000048f00000ULL,
6556 0x3490000000000000ULL,
6557 -1ULL,
6558 -1ULL,
6559 -1ULL
6561 #endif
6563 { "sne", TILEPRO_OPC_SNE, 0xf, 3, TREG_ZERO, 1,
6564 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
6565 #ifndef DISASM_ONLY
6567 0x800000007ffc0000ULL,
6568 0xfffe000000000000ULL,
6569 0x80000000780c0000ULL,
6570 0xf806000000000000ULL,
6571 0ULL
6574 0x00000000015c0000ULL,
6575 0x0872000000000000ULL,
6576 0x80000000300c0000ULL,
6577 0xb006000000000000ULL,
6578 -1ULL
6580 #endif
6582 { "sne.sn", TILEPRO_OPC_SNE_SN, 0x3, 3, TREG_SN, 1,
6583 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6584 #ifndef DISASM_ONLY
6586 0x800000007ffc0000ULL,
6587 0xfffe000000000000ULL,
6588 0ULL,
6589 0ULL,
6590 0ULL
6593 0x00000000095c0000ULL,
6594 0x0c72000000000000ULL,
6595 -1ULL,
6596 -1ULL,
6597 -1ULL
6599 #endif
6601 { "sneb", TILEPRO_OPC_SNEB, 0x3, 3, TREG_ZERO, 1,
6602 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6603 #ifndef DISASM_ONLY
6605 0x800000007ffc0000ULL,
6606 0xfffe000000000000ULL,
6607 0ULL,
6608 0ULL,
6609 0ULL
6612 0x0000000001540000ULL,
6613 0x086e000000000000ULL,
6614 -1ULL,
6615 -1ULL,
6616 -1ULL
6618 #endif
6620 { "sneb.sn", TILEPRO_OPC_SNEB_SN, 0x3, 3, TREG_SN, 1,
6621 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6622 #ifndef DISASM_ONLY
6624 0x800000007ffc0000ULL,
6625 0xfffe000000000000ULL,
6626 0ULL,
6627 0ULL,
6628 0ULL
6631 0x0000000009540000ULL,
6632 0x0c6e000000000000ULL,
6633 -1ULL,
6634 -1ULL,
6635 -1ULL
6637 #endif
6639 { "sneh", TILEPRO_OPC_SNEH, 0x3, 3, TREG_ZERO, 1,
6640 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6641 #ifndef DISASM_ONLY
6643 0x800000007ffc0000ULL,
6644 0xfffe000000000000ULL,
6645 0ULL,
6646 0ULL,
6647 0ULL
6650 0x0000000001580000ULL,
6651 0x0870000000000000ULL,
6652 -1ULL,
6653 -1ULL,
6654 -1ULL
6656 #endif
6658 { "sneh.sn", TILEPRO_OPC_SNEH_SN, 0x3, 3, TREG_SN, 1,
6659 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6660 #ifndef DISASM_ONLY
6662 0x800000007ffc0000ULL,
6663 0xfffe000000000000ULL,
6664 0ULL,
6665 0ULL,
6666 0ULL
6669 0x0000000009580000ULL,
6670 0x0c70000000000000ULL,
6671 -1ULL,
6672 -1ULL,
6673 -1ULL
6675 #endif
6677 { "sra", TILEPRO_OPC_SRA, 0xf, 3, TREG_ZERO, 1,
6678 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
6679 #ifndef DISASM_ONLY
6681 0x800000007ffc0000ULL,
6682 0xfffe000000000000ULL,
6683 0x80000000780c0000ULL,
6684 0xf806000000000000ULL,
6685 0ULL
6688 0x0000000001680000ULL,
6689 0x0878000000000000ULL,
6690 0x80000000200c0000ULL,
6691 0xa006000000000000ULL,
6692 -1ULL
6694 #endif
6696 { "sra.sn", TILEPRO_OPC_SRA_SN, 0x3, 3, TREG_SN, 1,
6697 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6698 #ifndef DISASM_ONLY
6700 0x800000007ffc0000ULL,
6701 0xfffe000000000000ULL,
6702 0ULL,
6703 0ULL,
6704 0ULL
6707 0x0000000009680000ULL,
6708 0x0c78000000000000ULL,
6709 -1ULL,
6710 -1ULL,
6711 -1ULL
6713 #endif
6715 { "srab", TILEPRO_OPC_SRAB, 0x3, 3, TREG_ZERO, 1,
6716 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6717 #ifndef DISASM_ONLY
6719 0x800000007ffc0000ULL,
6720 0xfffe000000000000ULL,
6721 0ULL,
6722 0ULL,
6723 0ULL
6726 0x0000000001600000ULL,
6727 0x0874000000000000ULL,
6728 -1ULL,
6729 -1ULL,
6730 -1ULL
6732 #endif
6734 { "srab.sn", TILEPRO_OPC_SRAB_SN, 0x3, 3, TREG_SN, 1,
6735 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6736 #ifndef DISASM_ONLY
6738 0x800000007ffc0000ULL,
6739 0xfffe000000000000ULL,
6740 0ULL,
6741 0ULL,
6742 0ULL
6745 0x0000000009600000ULL,
6746 0x0c74000000000000ULL,
6747 -1ULL,
6748 -1ULL,
6749 -1ULL
6751 #endif
6753 { "srah", TILEPRO_OPC_SRAH, 0x3, 3, TREG_ZERO, 1,
6754 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6755 #ifndef DISASM_ONLY
6757 0x800000007ffc0000ULL,
6758 0xfffe000000000000ULL,
6759 0ULL,
6760 0ULL,
6761 0ULL
6764 0x0000000001640000ULL,
6765 0x0876000000000000ULL,
6766 -1ULL,
6767 -1ULL,
6768 -1ULL
6770 #endif
6772 { "srah.sn", TILEPRO_OPC_SRAH_SN, 0x3, 3, TREG_SN, 1,
6773 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6774 #ifndef DISASM_ONLY
6776 0x800000007ffc0000ULL,
6777 0xfffe000000000000ULL,
6778 0ULL,
6779 0ULL,
6780 0ULL
6783 0x0000000009640000ULL,
6784 0x0c76000000000000ULL,
6785 -1ULL,
6786 -1ULL,
6787 -1ULL
6789 #endif
6791 { "srai", TILEPRO_OPC_SRAI, 0xf, 3, TREG_ZERO, 1,
6792 { { 7, 8, 32 }, { 9, 10, 33 }, { 11, 12, 34 }, { 13, 14, 35 }, { 0, } },
6793 #ifndef DISASM_ONLY
6795 0x800000007ffe0000ULL,
6796 0xffff000000000000ULL,
6797 0x80000000780e0000ULL,
6798 0xf807000000000000ULL,
6799 0ULL
6802 0x0000000070140000ULL,
6803 0x400a000000000000ULL,
6804 0x8000000068080000ULL,
6805 0xd804000000000000ULL,
6806 -1ULL
6808 #endif
6810 { "srai.sn", TILEPRO_OPC_SRAI_SN, 0x3, 3, TREG_SN, 1,
6811 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
6812 #ifndef DISASM_ONLY
6814 0x800000007ffe0000ULL,
6815 0xffff000000000000ULL,
6816 0ULL,
6817 0ULL,
6818 0ULL
6821 0x0000000078140000ULL,
6822 0x440a000000000000ULL,
6823 -1ULL,
6824 -1ULL,
6825 -1ULL
6827 #endif
6829 { "sraib", TILEPRO_OPC_SRAIB, 0x3, 3, TREG_ZERO, 1,
6830 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
6831 #ifndef DISASM_ONLY
6833 0x800000007ffe0000ULL,
6834 0xffff000000000000ULL,
6835 0ULL,
6836 0ULL,
6837 0ULL
6840 0x0000000070100000ULL,
6841 0x4008000000000000ULL,
6842 -1ULL,
6843 -1ULL,
6844 -1ULL
6846 #endif
6848 { "sraib.sn", TILEPRO_OPC_SRAIB_SN, 0x3, 3, TREG_SN, 1,
6849 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
6850 #ifndef DISASM_ONLY
6852 0x800000007ffe0000ULL,
6853 0xffff000000000000ULL,
6854 0ULL,
6855 0ULL,
6856 0ULL
6859 0x0000000078100000ULL,
6860 0x4408000000000000ULL,
6861 -1ULL,
6862 -1ULL,
6863 -1ULL
6865 #endif
6867 { "sraih", TILEPRO_OPC_SRAIH, 0x3, 3, TREG_ZERO, 1,
6868 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
6869 #ifndef DISASM_ONLY
6871 0x800000007ffe0000ULL,
6872 0xffff000000000000ULL,
6873 0ULL,
6874 0ULL,
6875 0ULL
6878 0x0000000070120000ULL,
6879 0x4009000000000000ULL,
6880 -1ULL,
6881 -1ULL,
6882 -1ULL
6884 #endif
6886 { "sraih.sn", TILEPRO_OPC_SRAIH_SN, 0x3, 3, TREG_SN, 1,
6887 { { 7, 8, 32 }, { 9, 10, 33 }, { 0, }, { 0, }, { 0, } },
6888 #ifndef DISASM_ONLY
6890 0x800000007ffe0000ULL,
6891 0xffff000000000000ULL,
6892 0ULL,
6893 0ULL,
6894 0ULL
6897 0x0000000078120000ULL,
6898 0x4409000000000000ULL,
6899 -1ULL,
6900 -1ULL,
6901 -1ULL
6903 #endif
6905 { "sub", TILEPRO_OPC_SUB, 0xf, 3, TREG_ZERO, 1,
6906 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
6907 #ifndef DISASM_ONLY
6909 0x800000007ffc0000ULL,
6910 0xfffe000000000000ULL,
6911 0x80000000780c0000ULL,
6912 0xf806000000000000ULL,
6913 0ULL
6916 0x0000000001740000ULL,
6917 0x087e000000000000ULL,
6918 0x80000000080c0000ULL,
6919 0x8806000000000000ULL,
6920 -1ULL
6922 #endif
6924 { "sub.sn", TILEPRO_OPC_SUB_SN, 0x3, 3, TREG_SN, 1,
6925 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6926 #ifndef DISASM_ONLY
6928 0x800000007ffc0000ULL,
6929 0xfffe000000000000ULL,
6930 0ULL,
6931 0ULL,
6932 0ULL
6935 0x0000000009740000ULL,
6936 0x0c7e000000000000ULL,
6937 -1ULL,
6938 -1ULL,
6939 -1ULL
6941 #endif
6943 { "subb", TILEPRO_OPC_SUBB, 0x3, 3, TREG_ZERO, 1,
6944 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6945 #ifndef DISASM_ONLY
6947 0x800000007ffc0000ULL,
6948 0xfffe000000000000ULL,
6949 0ULL,
6950 0ULL,
6951 0ULL
6954 0x00000000016c0000ULL,
6955 0x087a000000000000ULL,
6956 -1ULL,
6957 -1ULL,
6958 -1ULL
6960 #endif
6962 { "subb.sn", TILEPRO_OPC_SUBB_SN, 0x3, 3, TREG_SN, 1,
6963 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6964 #ifndef DISASM_ONLY
6966 0x800000007ffc0000ULL,
6967 0xfffe000000000000ULL,
6968 0ULL,
6969 0ULL,
6970 0ULL
6973 0x00000000096c0000ULL,
6974 0x0c7a000000000000ULL,
6975 -1ULL,
6976 -1ULL,
6977 -1ULL
6979 #endif
6981 { "subbs_u", TILEPRO_OPC_SUBBS_U, 0x3, 3, TREG_ZERO, 1,
6982 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
6983 #ifndef DISASM_ONLY
6985 0x800000007ffc0000ULL,
6986 0xfffe000000000000ULL,
6987 0ULL,
6988 0ULL,
6989 0ULL
6992 0x0000000001900000ULL,
6993 0x088c000000000000ULL,
6994 -1ULL,
6995 -1ULL,
6996 -1ULL
6998 #endif
7000 { "subbs_u.sn", TILEPRO_OPC_SUBBS_U_SN, 0x3, 3, TREG_SN, 1,
7001 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7002 #ifndef DISASM_ONLY
7004 0x800000007ffc0000ULL,
7005 0xfffe000000000000ULL,
7006 0ULL,
7007 0ULL,
7008 0ULL
7011 0x0000000009900000ULL,
7012 0x0c8c000000000000ULL,
7013 -1ULL,
7014 -1ULL,
7015 -1ULL
7017 #endif
7019 { "subh", TILEPRO_OPC_SUBH, 0x3, 3, TREG_ZERO, 1,
7020 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7021 #ifndef DISASM_ONLY
7023 0x800000007ffc0000ULL,
7024 0xfffe000000000000ULL,
7025 0ULL,
7026 0ULL,
7027 0ULL
7030 0x0000000001700000ULL,
7031 0x087c000000000000ULL,
7032 -1ULL,
7033 -1ULL,
7034 -1ULL
7036 #endif
7038 { "subh.sn", TILEPRO_OPC_SUBH_SN, 0x3, 3, TREG_SN, 1,
7039 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7040 #ifndef DISASM_ONLY
7042 0x800000007ffc0000ULL,
7043 0xfffe000000000000ULL,
7044 0ULL,
7045 0ULL,
7046 0ULL
7049 0x0000000009700000ULL,
7050 0x0c7c000000000000ULL,
7051 -1ULL,
7052 -1ULL,
7053 -1ULL
7055 #endif
7057 { "subhs", TILEPRO_OPC_SUBHS, 0x3, 3, TREG_ZERO, 1,
7058 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7059 #ifndef DISASM_ONLY
7061 0x800000007ffc0000ULL,
7062 0xfffe000000000000ULL,
7063 0ULL,
7064 0ULL,
7065 0ULL
7068 0x0000000001940000ULL,
7069 0x088e000000000000ULL,
7070 -1ULL,
7071 -1ULL,
7072 -1ULL
7074 #endif
7076 { "subhs.sn", TILEPRO_OPC_SUBHS_SN, 0x3, 3, TREG_SN, 1,
7077 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7078 #ifndef DISASM_ONLY
7080 0x800000007ffc0000ULL,
7081 0xfffe000000000000ULL,
7082 0ULL,
7083 0ULL,
7084 0ULL
7087 0x0000000009940000ULL,
7088 0x0c8e000000000000ULL,
7089 -1ULL,
7090 -1ULL,
7091 -1ULL
7093 #endif
7095 { "subs", TILEPRO_OPC_SUBS, 0x3, 3, TREG_ZERO, 1,
7096 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7097 #ifndef DISASM_ONLY
7099 0x800000007ffc0000ULL,
7100 0xfffe000000000000ULL,
7101 0ULL,
7102 0ULL,
7103 0ULL
7106 0x0000000001840000ULL,
7107 0x0886000000000000ULL,
7108 -1ULL,
7109 -1ULL,
7110 -1ULL
7112 #endif
7114 { "subs.sn", TILEPRO_OPC_SUBS_SN, 0x3, 3, TREG_SN, 1,
7115 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7116 #ifndef DISASM_ONLY
7118 0x800000007ffc0000ULL,
7119 0xfffe000000000000ULL,
7120 0ULL,
7121 0ULL,
7122 0ULL
7125 0x0000000009840000ULL,
7126 0x0c86000000000000ULL,
7127 -1ULL,
7128 -1ULL,
7129 -1ULL
7131 #endif
7133 { "sw", TILEPRO_OPC_SW, 0x12, 2, TREG_ZERO, 1,
7134 { { 0, }, { 10, 17 }, { 0, }, { 0, }, { 15, 36 } },
7135 #ifndef DISASM_ONLY
7137 0ULL,
7138 0xfbfe000000000000ULL,
7139 0ULL,
7140 0ULL,
7141 0x8700000000000000ULL
7144 -1ULL,
7145 0x0880000000000000ULL,
7146 -1ULL,
7147 -1ULL,
7148 0x8700000000000000ULL
7150 #endif
7152 { "swadd", TILEPRO_OPC_SWADD, 0x2, 3, TREG_ZERO, 1,
7153 { { 0, }, { 24, 17, 37 }, { 0, }, { 0, }, { 0, } },
7154 #ifndef DISASM_ONLY
7156 0ULL,
7157 0xfbf8000000000000ULL,
7158 0ULL,
7159 0ULL,
7160 0ULL
7163 -1ULL,
7164 0x30f0000000000000ULL,
7165 -1ULL,
7166 -1ULL,
7167 -1ULL
7169 #endif
7171 { "swint0", TILEPRO_OPC_SWINT0, 0x2, 0, TREG_ZERO, 0,
7172 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
7173 #ifndef DISASM_ONLY
7175 0ULL,
7176 0xfbfff80000000000ULL,
7177 0ULL,
7178 0ULL,
7179 0ULL
7182 -1ULL,
7183 0x400b900000000000ULL,
7184 -1ULL,
7185 -1ULL,
7186 -1ULL
7188 #endif
7190 { "swint1", TILEPRO_OPC_SWINT1, 0x2, 0, TREG_ZERO, 0,
7191 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
7192 #ifndef DISASM_ONLY
7194 0ULL,
7195 0xfbfff80000000000ULL,
7196 0ULL,
7197 0ULL,
7198 0ULL
7201 -1ULL,
7202 0x400b980000000000ULL,
7203 -1ULL,
7204 -1ULL,
7205 -1ULL
7207 #endif
7209 { "swint2", TILEPRO_OPC_SWINT2, 0x2, 0, TREG_ZERO, 0,
7210 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
7211 #ifndef DISASM_ONLY
7213 0ULL,
7214 0xfbfff80000000000ULL,
7215 0ULL,
7216 0ULL,
7217 0ULL
7220 -1ULL,
7221 0x400ba00000000000ULL,
7222 -1ULL,
7223 -1ULL,
7224 -1ULL
7226 #endif
7228 { "swint3", TILEPRO_OPC_SWINT3, 0x2, 0, TREG_ZERO, 0,
7229 { { 0, }, { }, { 0, }, { 0, }, { 0, } },
7230 #ifndef DISASM_ONLY
7232 0ULL,
7233 0xfbfff80000000000ULL,
7234 0ULL,
7235 0ULL,
7236 0ULL
7239 -1ULL,
7240 0x400ba80000000000ULL,
7241 -1ULL,
7242 -1ULL,
7243 -1ULL
7245 #endif
7247 { "tblidxb0", TILEPRO_OPC_TBLIDXB0, 0x5, 2, TREG_ZERO, 1,
7248 { { 21, 8 }, { 0, }, { 31, 12 }, { 0, }, { 0, } },
7249 #ifndef DISASM_ONLY
7251 0x800000007ffff000ULL,
7252 0ULL,
7253 0x80000000780ff000ULL,
7254 0ULL,
7255 0ULL
7258 0x0000000070168000ULL,
7259 -1ULL,
7260 0x80000000680a8000ULL,
7261 -1ULL,
7262 -1ULL
7264 #endif
7266 { "tblidxb0.sn", TILEPRO_OPC_TBLIDXB0_SN, 0x1, 2, TREG_SN, 1,
7267 { { 21, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
7268 #ifndef DISASM_ONLY
7270 0x800000007ffff000ULL,
7271 0ULL,
7272 0ULL,
7273 0ULL,
7274 0ULL
7277 0x0000000078168000ULL,
7278 -1ULL,
7279 -1ULL,
7280 -1ULL,
7281 -1ULL
7283 #endif
7285 { "tblidxb1", TILEPRO_OPC_TBLIDXB1, 0x5, 2, TREG_ZERO, 1,
7286 { { 21, 8 }, { 0, }, { 31, 12 }, { 0, }, { 0, } },
7287 #ifndef DISASM_ONLY
7289 0x800000007ffff000ULL,
7290 0ULL,
7291 0x80000000780ff000ULL,
7292 0ULL,
7293 0ULL
7296 0x0000000070169000ULL,
7297 -1ULL,
7298 0x80000000680a9000ULL,
7299 -1ULL,
7300 -1ULL
7302 #endif
7304 { "tblidxb1.sn", TILEPRO_OPC_TBLIDXB1_SN, 0x1, 2, TREG_SN, 1,
7305 { { 21, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
7306 #ifndef DISASM_ONLY
7308 0x800000007ffff000ULL,
7309 0ULL,
7310 0ULL,
7311 0ULL,
7312 0ULL
7315 0x0000000078169000ULL,
7316 -1ULL,
7317 -1ULL,
7318 -1ULL,
7319 -1ULL
7321 #endif
7323 { "tblidxb2", TILEPRO_OPC_TBLIDXB2, 0x5, 2, TREG_ZERO, 1,
7324 { { 21, 8 }, { 0, }, { 31, 12 }, { 0, }, { 0, } },
7325 #ifndef DISASM_ONLY
7327 0x800000007ffff000ULL,
7328 0ULL,
7329 0x80000000780ff000ULL,
7330 0ULL,
7331 0ULL
7334 0x000000007016a000ULL,
7335 -1ULL,
7336 0x80000000680aa000ULL,
7337 -1ULL,
7338 -1ULL
7340 #endif
7342 { "tblidxb2.sn", TILEPRO_OPC_TBLIDXB2_SN, 0x1, 2, TREG_SN, 1,
7343 { { 21, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
7344 #ifndef DISASM_ONLY
7346 0x800000007ffff000ULL,
7347 0ULL,
7348 0ULL,
7349 0ULL,
7350 0ULL
7353 0x000000007816a000ULL,
7354 -1ULL,
7355 -1ULL,
7356 -1ULL,
7357 -1ULL
7359 #endif
7361 { "tblidxb3", TILEPRO_OPC_TBLIDXB3, 0x5, 2, TREG_ZERO, 1,
7362 { { 21, 8 }, { 0, }, { 31, 12 }, { 0, }, { 0, } },
7363 #ifndef DISASM_ONLY
7365 0x800000007ffff000ULL,
7366 0ULL,
7367 0x80000000780ff000ULL,
7368 0ULL,
7369 0ULL
7372 0x000000007016b000ULL,
7373 -1ULL,
7374 0x80000000680ab000ULL,
7375 -1ULL,
7376 -1ULL
7378 #endif
7380 { "tblidxb3.sn", TILEPRO_OPC_TBLIDXB3_SN, 0x1, 2, TREG_SN, 1,
7381 { { 21, 8 }, { 0, }, { 0, }, { 0, }, { 0, } },
7382 #ifndef DISASM_ONLY
7384 0x800000007ffff000ULL,
7385 0ULL,
7386 0ULL,
7387 0ULL,
7388 0ULL
7391 0x000000007816b000ULL,
7392 -1ULL,
7393 -1ULL,
7394 -1ULL,
7395 -1ULL
7397 #endif
7399 { "tns", TILEPRO_OPC_TNS, 0x2, 2, TREG_ZERO, 1,
7400 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
7401 #ifndef DISASM_ONLY
7403 0ULL,
7404 0xfffff80000000000ULL,
7405 0ULL,
7406 0ULL,
7407 0ULL
7410 -1ULL,
7411 0x400bb00000000000ULL,
7412 -1ULL,
7413 -1ULL,
7414 -1ULL
7416 #endif
7418 { "tns.sn", TILEPRO_OPC_TNS_SN, 0x2, 2, TREG_SN, 1,
7419 { { 0, }, { 9, 10 }, { 0, }, { 0, }, { 0, } },
7420 #ifndef DISASM_ONLY
7422 0ULL,
7423 0xfffff80000000000ULL,
7424 0ULL,
7425 0ULL,
7426 0ULL
7429 -1ULL,
7430 0x440bb00000000000ULL,
7431 -1ULL,
7432 -1ULL,
7433 -1ULL
7435 #endif
7437 { "wh64", TILEPRO_OPC_WH64, 0x2, 1, TREG_ZERO, 1,
7438 { { 0, }, { 10 }, { 0, }, { 0, }, { 0, } },
7439 #ifndef DISASM_ONLY
7441 0ULL,
7442 0xfbfff80000000000ULL,
7443 0ULL,
7444 0ULL,
7445 0ULL
7448 -1ULL,
7449 0x400bb80000000000ULL,
7450 -1ULL,
7451 -1ULL,
7452 -1ULL
7454 #endif
7456 { "xor", TILEPRO_OPC_XOR, 0xf, 3, TREG_ZERO, 1,
7457 { { 7, 8, 16 }, { 9, 10, 17 }, { 11, 12, 18 }, { 13, 14, 19 }, { 0, } },
7458 #ifndef DISASM_ONLY
7460 0x800000007ffc0000ULL,
7461 0xfffe000000000000ULL,
7462 0x80000000780c0000ULL,
7463 0xf806000000000000ULL,
7464 0ULL
7467 0x0000000001780000ULL,
7468 0x0882000000000000ULL,
7469 0x80000000180c0000ULL,
7470 0x9806000000000000ULL,
7471 -1ULL
7473 #endif
7475 { "xor.sn", TILEPRO_OPC_XOR_SN, 0x3, 3, TREG_SN, 1,
7476 { { 7, 8, 16 }, { 9, 10, 17 }, { 0, }, { 0, }, { 0, } },
7477 #ifndef DISASM_ONLY
7479 0x800000007ffc0000ULL,
7480 0xfffe000000000000ULL,
7481 0ULL,
7482 0ULL,
7483 0ULL
7486 0x0000000009780000ULL,
7487 0x0c82000000000000ULL,
7488 -1ULL,
7489 -1ULL,
7490 -1ULL
7492 #endif
7494 { "xori", TILEPRO_OPC_XORI, 0x3, 3, TREG_ZERO, 1,
7495 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
7496 #ifndef DISASM_ONLY
7498 0x800000007ff00000ULL,
7499 0xfff8000000000000ULL,
7500 0ULL,
7501 0ULL,
7502 0ULL
7505 0x0000000050200000ULL,
7506 0x30a8000000000000ULL,
7507 -1ULL,
7508 -1ULL,
7509 -1ULL
7511 #endif
7513 { "xori.sn", TILEPRO_OPC_XORI_SN, 0x3, 3, TREG_SN, 1,
7514 { { 7, 8, 0 }, { 9, 10, 1 }, { 0, }, { 0, }, { 0, } },
7515 #ifndef DISASM_ONLY
7517 0x800000007ff00000ULL,
7518 0xfff8000000000000ULL,
7519 0ULL,
7520 0ULL,
7521 0ULL
7524 0x0000000058200000ULL,
7525 0x34a8000000000000ULL,
7526 -1ULL,
7527 -1ULL,
7528 -1ULL
7530 #endif
7532 { NULL, TILEPRO_OPC_NONE, 0, 0, TREG_ZERO, 0, { { 0, } },
7533 #ifndef DISASM_ONLY
7534 { 0, }, { 0, }
7535 #endif
7539 #define BITFIELD(start, size) ((start) | (((1 << (size)) - 1) << 6))
7540 #define CHILD(array_index) (TILEPRO_OPC_NONE + (array_index))
7542 static const unsigned short decode_X0_fsm[1153] =
7544 BITFIELD(22, 9) /* index 0 */,
7545 CHILD(513), CHILD(530), CHILD(547), CHILD(564), CHILD(596), CHILD(613),
7546 CHILD(630), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7547 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7548 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7549 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7550 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7551 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7552 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(663), CHILD(680), CHILD(697),
7553 CHILD(714), CHILD(746), CHILD(763), CHILD(780), TILEPRO_OPC_NONE,
7554 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7555 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7556 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7557 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7558 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7559 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7560 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7561 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7562 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7563 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7564 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7565 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7566 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7567 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7568 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7569 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(813),
7570 CHILD(813), CHILD(813), CHILD(813), CHILD(813), CHILD(828), CHILD(828),
7571 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7572 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7573 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7574 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7575 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7576 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7577 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7578 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7579 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7580 CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828), CHILD(828),
7581 CHILD(828), CHILD(828), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7582 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7583 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7584 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7585 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7586 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7587 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7588 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7589 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7590 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7591 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7592 CHILD(873), CHILD(878), CHILD(883), CHILD(903), CHILD(908),
7593 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7594 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7595 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7596 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7597 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7598 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7599 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(913),
7600 CHILD(918), CHILD(923), CHILD(943), CHILD(948), TILEPRO_OPC_NONE,
7601 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7602 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7603 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7604 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7605 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7606 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7607 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(953), TILEPRO_OPC_NONE,
7608 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7609 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7610 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7611 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7612 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7613 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7614 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7615 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(988), TILEPRO_OPC_NONE,
7616 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7617 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7618 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7619 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7620 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7621 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7622 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7623 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7624 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7625 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7626 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7627 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7628 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7629 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7630 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7631 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7632 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7633 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7634 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7635 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7636 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7637 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7638 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7639 TILEPRO_OPC_MM, TILEPRO_OPC_MM, CHILD(993), TILEPRO_OPC_NONE,
7640 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7641 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7642 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7643 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7644 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7645 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7646 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7647 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(1076), TILEPRO_OPC_NONE,
7648 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7649 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7650 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7651 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7652 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7653 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7654 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7655 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7656 BITFIELD(18, 4) /* index 513 */,
7657 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDB, TILEPRO_OPC_ADDH, TILEPRO_OPC_ADD,
7658 TILEPRO_OPC_ADIFFB_U, TILEPRO_OPC_ADIFFH, TILEPRO_OPC_AND,
7659 TILEPRO_OPC_AVGB_U, TILEPRO_OPC_AVGH, TILEPRO_OPC_CRC32_32,
7660 TILEPRO_OPC_CRC32_8, TILEPRO_OPC_INTHB, TILEPRO_OPC_INTHH,
7661 TILEPRO_OPC_INTLB, TILEPRO_OPC_INTLH, TILEPRO_OPC_MAXB_U,
7662 BITFIELD(18, 4) /* index 530 */,
7663 TILEPRO_OPC_MAXH, TILEPRO_OPC_MINB_U, TILEPRO_OPC_MINH, TILEPRO_OPC_MNZB,
7664 TILEPRO_OPC_MNZH, TILEPRO_OPC_MNZ, TILEPRO_OPC_MULHHA_SS,
7665 TILEPRO_OPC_MULHHA_SU, TILEPRO_OPC_MULHHA_UU, TILEPRO_OPC_MULHHSA_UU,
7666 TILEPRO_OPC_MULHH_SS, TILEPRO_OPC_MULHH_SU, TILEPRO_OPC_MULHH_UU,
7667 TILEPRO_OPC_MULHLA_SS, TILEPRO_OPC_MULHLA_SU, TILEPRO_OPC_MULHLA_US,
7668 BITFIELD(18, 4) /* index 547 */,
7669 TILEPRO_OPC_MULHLA_UU, TILEPRO_OPC_MULHLSA_UU, TILEPRO_OPC_MULHL_SS,
7670 TILEPRO_OPC_MULHL_SU, TILEPRO_OPC_MULHL_US, TILEPRO_OPC_MULHL_UU,
7671 TILEPRO_OPC_MULLLA_SS, TILEPRO_OPC_MULLLA_SU, TILEPRO_OPC_MULLLA_UU,
7672 TILEPRO_OPC_MULLLSA_UU, TILEPRO_OPC_MULLL_SS, TILEPRO_OPC_MULLL_SU,
7673 TILEPRO_OPC_MULLL_UU, TILEPRO_OPC_MVNZ, TILEPRO_OPC_MVZ, TILEPRO_OPC_MZB,
7674 BITFIELD(18, 4) /* index 564 */,
7675 TILEPRO_OPC_MZH, TILEPRO_OPC_MZ, TILEPRO_OPC_NOR, CHILD(581),
7676 TILEPRO_OPC_PACKHB, TILEPRO_OPC_PACKLB, TILEPRO_OPC_RL, TILEPRO_OPC_S1A,
7677 TILEPRO_OPC_S2A, TILEPRO_OPC_S3A, TILEPRO_OPC_SADAB_U, TILEPRO_OPC_SADAH,
7678 TILEPRO_OPC_SADAH_U, TILEPRO_OPC_SADB_U, TILEPRO_OPC_SADH,
7679 TILEPRO_OPC_SADH_U,
7680 BITFIELD(12, 2) /* index 581 */,
7681 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(586),
7682 BITFIELD(14, 2) /* index 586 */,
7683 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(591),
7684 BITFIELD(16, 2) /* index 591 */,
7685 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_MOVE,
7686 BITFIELD(18, 4) /* index 596 */,
7687 TILEPRO_OPC_SEQB, TILEPRO_OPC_SEQH, TILEPRO_OPC_SEQ, TILEPRO_OPC_SHLB,
7688 TILEPRO_OPC_SHLH, TILEPRO_OPC_SHL, TILEPRO_OPC_SHRB, TILEPRO_OPC_SHRH,
7689 TILEPRO_OPC_SHR, TILEPRO_OPC_SLTB, TILEPRO_OPC_SLTB_U, TILEPRO_OPC_SLTEB,
7690 TILEPRO_OPC_SLTEB_U, TILEPRO_OPC_SLTEH, TILEPRO_OPC_SLTEH_U,
7691 TILEPRO_OPC_SLTE,
7692 BITFIELD(18, 4) /* index 613 */,
7693 TILEPRO_OPC_SLTE_U, TILEPRO_OPC_SLTH, TILEPRO_OPC_SLTH_U, TILEPRO_OPC_SLT,
7694 TILEPRO_OPC_SLT_U, TILEPRO_OPC_SNEB, TILEPRO_OPC_SNEH, TILEPRO_OPC_SNE,
7695 TILEPRO_OPC_SRAB, TILEPRO_OPC_SRAH, TILEPRO_OPC_SRA, TILEPRO_OPC_SUBB,
7696 TILEPRO_OPC_SUBH, TILEPRO_OPC_SUB, TILEPRO_OPC_XOR, TILEPRO_OPC_DWORD_ALIGN,
7697 BITFIELD(18, 3) /* index 630 */,
7698 CHILD(639), CHILD(642), CHILD(645), CHILD(648), CHILD(651), CHILD(654),
7699 CHILD(657), CHILD(660),
7700 BITFIELD(21, 1) /* index 639 */,
7701 TILEPRO_OPC_ADDS, TILEPRO_OPC_NONE,
7702 BITFIELD(21, 1) /* index 642 */,
7703 TILEPRO_OPC_SUBS, TILEPRO_OPC_NONE,
7704 BITFIELD(21, 1) /* index 645 */,
7705 TILEPRO_OPC_ADDBS_U, TILEPRO_OPC_NONE,
7706 BITFIELD(21, 1) /* index 648 */,
7707 TILEPRO_OPC_ADDHS, TILEPRO_OPC_NONE,
7708 BITFIELD(21, 1) /* index 651 */,
7709 TILEPRO_OPC_SUBBS_U, TILEPRO_OPC_NONE,
7710 BITFIELD(21, 1) /* index 654 */,
7711 TILEPRO_OPC_SUBHS, TILEPRO_OPC_NONE,
7712 BITFIELD(21, 1) /* index 657 */,
7713 TILEPRO_OPC_PACKHS, TILEPRO_OPC_NONE,
7714 BITFIELD(21, 1) /* index 660 */,
7715 TILEPRO_OPC_PACKBS_U, TILEPRO_OPC_NONE,
7716 BITFIELD(18, 4) /* index 663 */,
7717 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDB_SN, TILEPRO_OPC_ADDH_SN,
7718 TILEPRO_OPC_ADD_SN, TILEPRO_OPC_ADIFFB_U_SN, TILEPRO_OPC_ADIFFH_SN,
7719 TILEPRO_OPC_AND_SN, TILEPRO_OPC_AVGB_U_SN, TILEPRO_OPC_AVGH_SN,
7720 TILEPRO_OPC_CRC32_32_SN, TILEPRO_OPC_CRC32_8_SN, TILEPRO_OPC_INTHB_SN,
7721 TILEPRO_OPC_INTHH_SN, TILEPRO_OPC_INTLB_SN, TILEPRO_OPC_INTLH_SN,
7722 TILEPRO_OPC_MAXB_U_SN,
7723 BITFIELD(18, 4) /* index 680 */,
7724 TILEPRO_OPC_MAXH_SN, TILEPRO_OPC_MINB_U_SN, TILEPRO_OPC_MINH_SN,
7725 TILEPRO_OPC_MNZB_SN, TILEPRO_OPC_MNZH_SN, TILEPRO_OPC_MNZ_SN,
7726 TILEPRO_OPC_MULHHA_SS_SN, TILEPRO_OPC_MULHHA_SU_SN,
7727 TILEPRO_OPC_MULHHA_UU_SN, TILEPRO_OPC_MULHHSA_UU_SN,
7728 TILEPRO_OPC_MULHH_SS_SN, TILEPRO_OPC_MULHH_SU_SN, TILEPRO_OPC_MULHH_UU_SN,
7729 TILEPRO_OPC_MULHLA_SS_SN, TILEPRO_OPC_MULHLA_SU_SN,
7730 TILEPRO_OPC_MULHLA_US_SN,
7731 BITFIELD(18, 4) /* index 697 */,
7732 TILEPRO_OPC_MULHLA_UU_SN, TILEPRO_OPC_MULHLSA_UU_SN,
7733 TILEPRO_OPC_MULHL_SS_SN, TILEPRO_OPC_MULHL_SU_SN, TILEPRO_OPC_MULHL_US_SN,
7734 TILEPRO_OPC_MULHL_UU_SN, TILEPRO_OPC_MULLLA_SS_SN, TILEPRO_OPC_MULLLA_SU_SN,
7735 TILEPRO_OPC_MULLLA_UU_SN, TILEPRO_OPC_MULLLSA_UU_SN,
7736 TILEPRO_OPC_MULLL_SS_SN, TILEPRO_OPC_MULLL_SU_SN, TILEPRO_OPC_MULLL_UU_SN,
7737 TILEPRO_OPC_MVNZ_SN, TILEPRO_OPC_MVZ_SN, TILEPRO_OPC_MZB_SN,
7738 BITFIELD(18, 4) /* index 714 */,
7739 TILEPRO_OPC_MZH_SN, TILEPRO_OPC_MZ_SN, TILEPRO_OPC_NOR_SN, CHILD(731),
7740 TILEPRO_OPC_PACKHB_SN, TILEPRO_OPC_PACKLB_SN, TILEPRO_OPC_RL_SN,
7741 TILEPRO_OPC_S1A_SN, TILEPRO_OPC_S2A_SN, TILEPRO_OPC_S3A_SN,
7742 TILEPRO_OPC_SADAB_U_SN, TILEPRO_OPC_SADAH_SN, TILEPRO_OPC_SADAH_U_SN,
7743 TILEPRO_OPC_SADB_U_SN, TILEPRO_OPC_SADH_SN, TILEPRO_OPC_SADH_U_SN,
7744 BITFIELD(12, 2) /* index 731 */,
7745 TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, CHILD(736),
7746 BITFIELD(14, 2) /* index 736 */,
7747 TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, CHILD(741),
7748 BITFIELD(16, 2) /* index 741 */,
7749 TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN,
7750 TILEPRO_OPC_MOVE_SN,
7751 BITFIELD(18, 4) /* index 746 */,
7752 TILEPRO_OPC_SEQB_SN, TILEPRO_OPC_SEQH_SN, TILEPRO_OPC_SEQ_SN,
7753 TILEPRO_OPC_SHLB_SN, TILEPRO_OPC_SHLH_SN, TILEPRO_OPC_SHL_SN,
7754 TILEPRO_OPC_SHRB_SN, TILEPRO_OPC_SHRH_SN, TILEPRO_OPC_SHR_SN,
7755 TILEPRO_OPC_SLTB_SN, TILEPRO_OPC_SLTB_U_SN, TILEPRO_OPC_SLTEB_SN,
7756 TILEPRO_OPC_SLTEB_U_SN, TILEPRO_OPC_SLTEH_SN, TILEPRO_OPC_SLTEH_U_SN,
7757 TILEPRO_OPC_SLTE_SN,
7758 BITFIELD(18, 4) /* index 763 */,
7759 TILEPRO_OPC_SLTE_U_SN, TILEPRO_OPC_SLTH_SN, TILEPRO_OPC_SLTH_U_SN,
7760 TILEPRO_OPC_SLT_SN, TILEPRO_OPC_SLT_U_SN, TILEPRO_OPC_SNEB_SN,
7761 TILEPRO_OPC_SNEH_SN, TILEPRO_OPC_SNE_SN, TILEPRO_OPC_SRAB_SN,
7762 TILEPRO_OPC_SRAH_SN, TILEPRO_OPC_SRA_SN, TILEPRO_OPC_SUBB_SN,
7763 TILEPRO_OPC_SUBH_SN, TILEPRO_OPC_SUB_SN, TILEPRO_OPC_XOR_SN,
7764 TILEPRO_OPC_DWORD_ALIGN_SN,
7765 BITFIELD(18, 3) /* index 780 */,
7766 CHILD(789), CHILD(792), CHILD(795), CHILD(798), CHILD(801), CHILD(804),
7767 CHILD(807), CHILD(810),
7768 BITFIELD(21, 1) /* index 789 */,
7769 TILEPRO_OPC_ADDS_SN, TILEPRO_OPC_NONE,
7770 BITFIELD(21, 1) /* index 792 */,
7771 TILEPRO_OPC_SUBS_SN, TILEPRO_OPC_NONE,
7772 BITFIELD(21, 1) /* index 795 */,
7773 TILEPRO_OPC_ADDBS_U_SN, TILEPRO_OPC_NONE,
7774 BITFIELD(21, 1) /* index 798 */,
7775 TILEPRO_OPC_ADDHS_SN, TILEPRO_OPC_NONE,
7776 BITFIELD(21, 1) /* index 801 */,
7777 TILEPRO_OPC_SUBBS_U_SN, TILEPRO_OPC_NONE,
7778 BITFIELD(21, 1) /* index 804 */,
7779 TILEPRO_OPC_SUBHS_SN, TILEPRO_OPC_NONE,
7780 BITFIELD(21, 1) /* index 807 */,
7781 TILEPRO_OPC_PACKHS_SN, TILEPRO_OPC_NONE,
7782 BITFIELD(21, 1) /* index 810 */,
7783 TILEPRO_OPC_PACKBS_U_SN, TILEPRO_OPC_NONE,
7784 BITFIELD(6, 2) /* index 813 */,
7785 TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN,
7786 CHILD(818),
7787 BITFIELD(8, 2) /* index 818 */,
7788 TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN,
7789 CHILD(823),
7790 BITFIELD(10, 2) /* index 823 */,
7791 TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN,
7792 TILEPRO_OPC_MOVELI_SN,
7793 BITFIELD(6, 2) /* index 828 */,
7794 TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, CHILD(833),
7795 BITFIELD(8, 2) /* index 833 */,
7796 TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, CHILD(838),
7797 BITFIELD(10, 2) /* index 838 */,
7798 TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_MOVELI,
7799 BITFIELD(0, 2) /* index 843 */,
7800 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(848),
7801 BITFIELD(2, 2) /* index 848 */,
7802 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(853),
7803 BITFIELD(4, 2) /* index 853 */,
7804 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(858),
7805 BITFIELD(6, 2) /* index 858 */,
7806 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(863),
7807 BITFIELD(8, 2) /* index 863 */,
7808 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(868),
7809 BITFIELD(10, 2) /* index 868 */,
7810 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_INFOL,
7811 BITFIELD(20, 2) /* index 873 */,
7812 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDIB, TILEPRO_OPC_ADDIH, TILEPRO_OPC_ADDI,
7813 BITFIELD(20, 2) /* index 878 */,
7814 TILEPRO_OPC_MAXIB_U, TILEPRO_OPC_MAXIH, TILEPRO_OPC_MINIB_U,
7815 TILEPRO_OPC_MINIH,
7816 BITFIELD(20, 2) /* index 883 */,
7817 CHILD(888), TILEPRO_OPC_SEQIB, TILEPRO_OPC_SEQIH, TILEPRO_OPC_SEQI,
7818 BITFIELD(6, 2) /* index 888 */,
7819 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(893),
7820 BITFIELD(8, 2) /* index 893 */,
7821 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(898),
7822 BITFIELD(10, 2) /* index 898 */,
7823 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_MOVEI,
7824 BITFIELD(20, 2) /* index 903 */,
7825 TILEPRO_OPC_SLTIB, TILEPRO_OPC_SLTIB_U, TILEPRO_OPC_SLTIH,
7826 TILEPRO_OPC_SLTIH_U,
7827 BITFIELD(20, 2) /* index 908 */,
7828 TILEPRO_OPC_SLTI, TILEPRO_OPC_SLTI_U, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7829 BITFIELD(20, 2) /* index 913 */,
7830 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDIB_SN, TILEPRO_OPC_ADDIH_SN,
7831 TILEPRO_OPC_ADDI_SN,
7832 BITFIELD(20, 2) /* index 918 */,
7833 TILEPRO_OPC_MAXIB_U_SN, TILEPRO_OPC_MAXIH_SN, TILEPRO_OPC_MINIB_U_SN,
7834 TILEPRO_OPC_MINIH_SN,
7835 BITFIELD(20, 2) /* index 923 */,
7836 CHILD(928), TILEPRO_OPC_SEQIB_SN, TILEPRO_OPC_SEQIH_SN, TILEPRO_OPC_SEQI_SN,
7837 BITFIELD(6, 2) /* index 928 */,
7838 TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, CHILD(933),
7839 BITFIELD(8, 2) /* index 933 */,
7840 TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, CHILD(938),
7841 BITFIELD(10, 2) /* index 938 */,
7842 TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN,
7843 TILEPRO_OPC_MOVEI_SN,
7844 BITFIELD(20, 2) /* index 943 */,
7845 TILEPRO_OPC_SLTIB_SN, TILEPRO_OPC_SLTIB_U_SN, TILEPRO_OPC_SLTIH_SN,
7846 TILEPRO_OPC_SLTIH_U_SN,
7847 BITFIELD(20, 2) /* index 948 */,
7848 TILEPRO_OPC_SLTI_SN, TILEPRO_OPC_SLTI_U_SN, TILEPRO_OPC_NONE,
7849 TILEPRO_OPC_NONE,
7850 BITFIELD(20, 2) /* index 953 */,
7851 TILEPRO_OPC_NONE, CHILD(958), TILEPRO_OPC_XORI, TILEPRO_OPC_NONE,
7852 BITFIELD(0, 2) /* index 958 */,
7853 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(963),
7854 BITFIELD(2, 2) /* index 963 */,
7855 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(968),
7856 BITFIELD(4, 2) /* index 968 */,
7857 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(973),
7858 BITFIELD(6, 2) /* index 973 */,
7859 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(978),
7860 BITFIELD(8, 2) /* index 978 */,
7861 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(983),
7862 BITFIELD(10, 2) /* index 983 */,
7863 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_INFO,
7864 BITFIELD(20, 2) /* index 988 */,
7865 TILEPRO_OPC_NONE, TILEPRO_OPC_ANDI_SN, TILEPRO_OPC_XORI_SN,
7866 TILEPRO_OPC_NONE,
7867 BITFIELD(17, 5) /* index 993 */,
7868 TILEPRO_OPC_NONE, TILEPRO_OPC_RLI, TILEPRO_OPC_SHLIB, TILEPRO_OPC_SHLIH,
7869 TILEPRO_OPC_SHLI, TILEPRO_OPC_SHRIB, TILEPRO_OPC_SHRIH, TILEPRO_OPC_SHRI,
7870 TILEPRO_OPC_SRAIB, TILEPRO_OPC_SRAIH, TILEPRO_OPC_SRAI, CHILD(1026),
7871 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7872 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7873 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7874 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7875 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7876 BITFIELD(12, 4) /* index 1026 */,
7877 TILEPRO_OPC_NONE, CHILD(1043), CHILD(1046), CHILD(1049), CHILD(1052),
7878 CHILD(1055), CHILD(1058), CHILD(1061), CHILD(1064), CHILD(1067),
7879 CHILD(1070), CHILD(1073), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7880 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7881 BITFIELD(16, 1) /* index 1043 */,
7882 TILEPRO_OPC_BITX, TILEPRO_OPC_NONE,
7883 BITFIELD(16, 1) /* index 1046 */,
7884 TILEPRO_OPC_BYTEX, TILEPRO_OPC_NONE,
7885 BITFIELD(16, 1) /* index 1049 */,
7886 TILEPRO_OPC_CLZ, TILEPRO_OPC_NONE,
7887 BITFIELD(16, 1) /* index 1052 */,
7888 TILEPRO_OPC_CTZ, TILEPRO_OPC_NONE,
7889 BITFIELD(16, 1) /* index 1055 */,
7890 TILEPRO_OPC_FNOP, TILEPRO_OPC_NONE,
7891 BITFIELD(16, 1) /* index 1058 */,
7892 TILEPRO_OPC_NOP, TILEPRO_OPC_NONE,
7893 BITFIELD(16, 1) /* index 1061 */,
7894 TILEPRO_OPC_PCNT, TILEPRO_OPC_NONE,
7895 BITFIELD(16, 1) /* index 1064 */,
7896 TILEPRO_OPC_TBLIDXB0, TILEPRO_OPC_NONE,
7897 BITFIELD(16, 1) /* index 1067 */,
7898 TILEPRO_OPC_TBLIDXB1, TILEPRO_OPC_NONE,
7899 BITFIELD(16, 1) /* index 1070 */,
7900 TILEPRO_OPC_TBLIDXB2, TILEPRO_OPC_NONE,
7901 BITFIELD(16, 1) /* index 1073 */,
7902 TILEPRO_OPC_TBLIDXB3, TILEPRO_OPC_NONE,
7903 BITFIELD(17, 5) /* index 1076 */,
7904 TILEPRO_OPC_NONE, TILEPRO_OPC_RLI_SN, TILEPRO_OPC_SHLIB_SN,
7905 TILEPRO_OPC_SHLIH_SN, TILEPRO_OPC_SHLI_SN, TILEPRO_OPC_SHRIB_SN,
7906 TILEPRO_OPC_SHRIH_SN, TILEPRO_OPC_SHRI_SN, TILEPRO_OPC_SRAIB_SN,
7907 TILEPRO_OPC_SRAIH_SN, TILEPRO_OPC_SRAI_SN, CHILD(1109), TILEPRO_OPC_NONE,
7908 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7909 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7910 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7911 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7912 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7913 BITFIELD(12, 4) /* index 1109 */,
7914 TILEPRO_OPC_NONE, CHILD(1126), CHILD(1129), CHILD(1132), CHILD(1135),
7915 CHILD(1055), CHILD(1058), CHILD(1138), CHILD(1141), CHILD(1144),
7916 CHILD(1147), CHILD(1150), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7917 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7918 BITFIELD(16, 1) /* index 1126 */,
7919 TILEPRO_OPC_BITX_SN, TILEPRO_OPC_NONE,
7920 BITFIELD(16, 1) /* index 1129 */,
7921 TILEPRO_OPC_BYTEX_SN, TILEPRO_OPC_NONE,
7922 BITFIELD(16, 1) /* index 1132 */,
7923 TILEPRO_OPC_CLZ_SN, TILEPRO_OPC_NONE,
7924 BITFIELD(16, 1) /* index 1135 */,
7925 TILEPRO_OPC_CTZ_SN, TILEPRO_OPC_NONE,
7926 BITFIELD(16, 1) /* index 1138 */,
7927 TILEPRO_OPC_PCNT_SN, TILEPRO_OPC_NONE,
7928 BITFIELD(16, 1) /* index 1141 */,
7929 TILEPRO_OPC_TBLIDXB0_SN, TILEPRO_OPC_NONE,
7930 BITFIELD(16, 1) /* index 1144 */,
7931 TILEPRO_OPC_TBLIDXB1_SN, TILEPRO_OPC_NONE,
7932 BITFIELD(16, 1) /* index 1147 */,
7933 TILEPRO_OPC_TBLIDXB2_SN, TILEPRO_OPC_NONE,
7934 BITFIELD(16, 1) /* index 1150 */,
7935 TILEPRO_OPC_TBLIDXB3_SN, TILEPRO_OPC_NONE,
7938 static const unsigned short decode_X1_fsm[1540] =
7940 BITFIELD(54, 9) /* index 0 */,
7941 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7942 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7943 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7944 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7945 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7946 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7947 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7948 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7949 CHILD(513), CHILD(561), CHILD(594), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7950 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7951 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7952 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(641),
7953 CHILD(689), CHILD(722), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7954 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7955 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7956 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(766),
7957 CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766),
7958 CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766),
7959 CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766),
7960 CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766),
7961 CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766), CHILD(766),
7962 CHILD(766), CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781),
7963 CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781),
7964 CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781),
7965 CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781),
7966 CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781), CHILD(781),
7967 CHILD(781), CHILD(781), CHILD(781), CHILD(796), CHILD(796), CHILD(796),
7968 CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796),
7969 CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796),
7970 CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796),
7971 CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796),
7972 CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(796), CHILD(826),
7973 CHILD(826), CHILD(826), CHILD(826), CHILD(826), CHILD(826), CHILD(826),
7974 CHILD(826), CHILD(826), CHILD(826), CHILD(826), CHILD(826), CHILD(826),
7975 CHILD(826), CHILD(826), CHILD(826), CHILD(843), CHILD(843), CHILD(843),
7976 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7977 CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843), CHILD(843),
7978 CHILD(843), CHILD(860), CHILD(899), CHILD(923), CHILD(932),
7979 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7980 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7981 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7982 CHILD(941), CHILD(950), CHILD(974), CHILD(983), TILEPRO_OPC_NONE,
7983 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7984 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7985 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_MM,
7986 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7987 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7988 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7989 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7990 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7991 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7992 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM,
7993 TILEPRO_OPC_MM, TILEPRO_OPC_MM, TILEPRO_OPC_MM, CHILD(992),
7994 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7995 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7996 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7997 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, CHILD(1334),
7998 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
7999 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8000 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8001 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8002 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8003 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8004 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8005 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8006 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8007 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8008 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8009 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_J,
8010 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8011 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8012 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8013 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8014 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8015 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8016 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8017 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8018 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8019 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8020 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8021 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J,
8022 TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_J, TILEPRO_OPC_JAL,
8023 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8024 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8025 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8026 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8027 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8028 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8029 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8030 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8031 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8032 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8033 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8034 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8035 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8036 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8037 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL,
8038 TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_JAL, TILEPRO_OPC_NONE,
8039 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8040 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8041 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8042 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8043 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8044 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8045 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8046 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8047 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8048 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8049 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8050 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8051 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8052 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8053 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8054 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8055 BITFIELD(49, 5) /* index 513 */,
8056 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDB, TILEPRO_OPC_ADDH, TILEPRO_OPC_ADD,
8057 TILEPRO_OPC_AND, TILEPRO_OPC_INTHB, TILEPRO_OPC_INTHH, TILEPRO_OPC_INTLB,
8058 TILEPRO_OPC_INTLH, TILEPRO_OPC_JALRP, TILEPRO_OPC_JALR, TILEPRO_OPC_JRP,
8059 TILEPRO_OPC_JR, TILEPRO_OPC_LNK, TILEPRO_OPC_MAXB_U, TILEPRO_OPC_MAXH,
8060 TILEPRO_OPC_MINB_U, TILEPRO_OPC_MINH, TILEPRO_OPC_MNZB, TILEPRO_OPC_MNZH,
8061 TILEPRO_OPC_MNZ, TILEPRO_OPC_MZB, TILEPRO_OPC_MZH, TILEPRO_OPC_MZ,
8062 TILEPRO_OPC_NOR, CHILD(546), TILEPRO_OPC_PACKHB, TILEPRO_OPC_PACKLB,
8063 TILEPRO_OPC_RL, TILEPRO_OPC_S1A, TILEPRO_OPC_S2A, TILEPRO_OPC_S3A,
8064 BITFIELD(43, 2) /* index 546 */,
8065 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(551),
8066 BITFIELD(45, 2) /* index 551 */,
8067 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(556),
8068 BITFIELD(47, 2) /* index 556 */,
8069 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_MOVE,
8070 BITFIELD(49, 5) /* index 561 */,
8071 TILEPRO_OPC_SB, TILEPRO_OPC_SEQB, TILEPRO_OPC_SEQH, TILEPRO_OPC_SEQ,
8072 TILEPRO_OPC_SHLB, TILEPRO_OPC_SHLH, TILEPRO_OPC_SHL, TILEPRO_OPC_SHRB,
8073 TILEPRO_OPC_SHRH, TILEPRO_OPC_SHR, TILEPRO_OPC_SH, TILEPRO_OPC_SLTB,
8074 TILEPRO_OPC_SLTB_U, TILEPRO_OPC_SLTEB, TILEPRO_OPC_SLTEB_U,
8075 TILEPRO_OPC_SLTEH, TILEPRO_OPC_SLTEH_U, TILEPRO_OPC_SLTE,
8076 TILEPRO_OPC_SLTE_U, TILEPRO_OPC_SLTH, TILEPRO_OPC_SLTH_U, TILEPRO_OPC_SLT,
8077 TILEPRO_OPC_SLT_U, TILEPRO_OPC_SNEB, TILEPRO_OPC_SNEH, TILEPRO_OPC_SNE,
8078 TILEPRO_OPC_SRAB, TILEPRO_OPC_SRAH, TILEPRO_OPC_SRA, TILEPRO_OPC_SUBB,
8079 TILEPRO_OPC_SUBH, TILEPRO_OPC_SUB,
8080 BITFIELD(49, 4) /* index 594 */,
8081 CHILD(611), CHILD(614), CHILD(617), CHILD(620), CHILD(623), CHILD(626),
8082 CHILD(629), CHILD(632), CHILD(635), CHILD(638), TILEPRO_OPC_NONE,
8083 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8084 TILEPRO_OPC_NONE,
8085 BITFIELD(53, 1) /* index 611 */,
8086 TILEPRO_OPC_SW, TILEPRO_OPC_NONE,
8087 BITFIELD(53, 1) /* index 614 */,
8088 TILEPRO_OPC_XOR, TILEPRO_OPC_NONE,
8089 BITFIELD(53, 1) /* index 617 */,
8090 TILEPRO_OPC_ADDS, TILEPRO_OPC_NONE,
8091 BITFIELD(53, 1) /* index 620 */,
8092 TILEPRO_OPC_SUBS, TILEPRO_OPC_NONE,
8093 BITFIELD(53, 1) /* index 623 */,
8094 TILEPRO_OPC_ADDBS_U, TILEPRO_OPC_NONE,
8095 BITFIELD(53, 1) /* index 626 */,
8096 TILEPRO_OPC_ADDHS, TILEPRO_OPC_NONE,
8097 BITFIELD(53, 1) /* index 629 */,
8098 TILEPRO_OPC_SUBBS_U, TILEPRO_OPC_NONE,
8099 BITFIELD(53, 1) /* index 632 */,
8100 TILEPRO_OPC_SUBHS, TILEPRO_OPC_NONE,
8101 BITFIELD(53, 1) /* index 635 */,
8102 TILEPRO_OPC_PACKHS, TILEPRO_OPC_NONE,
8103 BITFIELD(53, 1) /* index 638 */,
8104 TILEPRO_OPC_PACKBS_U, TILEPRO_OPC_NONE,
8105 BITFIELD(49, 5) /* index 641 */,
8106 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDB_SN, TILEPRO_OPC_ADDH_SN,
8107 TILEPRO_OPC_ADD_SN, TILEPRO_OPC_AND_SN, TILEPRO_OPC_INTHB_SN,
8108 TILEPRO_OPC_INTHH_SN, TILEPRO_OPC_INTLB_SN, TILEPRO_OPC_INTLH_SN,
8109 TILEPRO_OPC_JALRP, TILEPRO_OPC_JALR, TILEPRO_OPC_JRP, TILEPRO_OPC_JR,
8110 TILEPRO_OPC_LNK_SN, TILEPRO_OPC_MAXB_U_SN, TILEPRO_OPC_MAXH_SN,
8111 TILEPRO_OPC_MINB_U_SN, TILEPRO_OPC_MINH_SN, TILEPRO_OPC_MNZB_SN,
8112 TILEPRO_OPC_MNZH_SN, TILEPRO_OPC_MNZ_SN, TILEPRO_OPC_MZB_SN,
8113 TILEPRO_OPC_MZH_SN, TILEPRO_OPC_MZ_SN, TILEPRO_OPC_NOR_SN, CHILD(674),
8114 TILEPRO_OPC_PACKHB_SN, TILEPRO_OPC_PACKLB_SN, TILEPRO_OPC_RL_SN,
8115 TILEPRO_OPC_S1A_SN, TILEPRO_OPC_S2A_SN, TILEPRO_OPC_S3A_SN,
8116 BITFIELD(43, 2) /* index 674 */,
8117 TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, CHILD(679),
8118 BITFIELD(45, 2) /* index 679 */,
8119 TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, CHILD(684),
8120 BITFIELD(47, 2) /* index 684 */,
8121 TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN, TILEPRO_OPC_OR_SN,
8122 TILEPRO_OPC_MOVE_SN,
8123 BITFIELD(49, 5) /* index 689 */,
8124 TILEPRO_OPC_SB, TILEPRO_OPC_SEQB_SN, TILEPRO_OPC_SEQH_SN,
8125 TILEPRO_OPC_SEQ_SN, TILEPRO_OPC_SHLB_SN, TILEPRO_OPC_SHLH_SN,
8126 TILEPRO_OPC_SHL_SN, TILEPRO_OPC_SHRB_SN, TILEPRO_OPC_SHRH_SN,
8127 TILEPRO_OPC_SHR_SN, TILEPRO_OPC_SH, TILEPRO_OPC_SLTB_SN,
8128 TILEPRO_OPC_SLTB_U_SN, TILEPRO_OPC_SLTEB_SN, TILEPRO_OPC_SLTEB_U_SN,
8129 TILEPRO_OPC_SLTEH_SN, TILEPRO_OPC_SLTEH_U_SN, TILEPRO_OPC_SLTE_SN,
8130 TILEPRO_OPC_SLTE_U_SN, TILEPRO_OPC_SLTH_SN, TILEPRO_OPC_SLTH_U_SN,
8131 TILEPRO_OPC_SLT_SN, TILEPRO_OPC_SLT_U_SN, TILEPRO_OPC_SNEB_SN,
8132 TILEPRO_OPC_SNEH_SN, TILEPRO_OPC_SNE_SN, TILEPRO_OPC_SRAB_SN,
8133 TILEPRO_OPC_SRAH_SN, TILEPRO_OPC_SRA_SN, TILEPRO_OPC_SUBB_SN,
8134 TILEPRO_OPC_SUBH_SN, TILEPRO_OPC_SUB_SN,
8135 BITFIELD(49, 4) /* index 722 */,
8136 CHILD(611), CHILD(739), CHILD(742), CHILD(745), CHILD(748), CHILD(751),
8137 CHILD(754), CHILD(757), CHILD(760), CHILD(763), TILEPRO_OPC_NONE,
8138 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8139 TILEPRO_OPC_NONE,
8140 BITFIELD(53, 1) /* index 739 */,
8141 TILEPRO_OPC_XOR_SN, TILEPRO_OPC_NONE,
8142 BITFIELD(53, 1) /* index 742 */,
8143 TILEPRO_OPC_ADDS_SN, TILEPRO_OPC_NONE,
8144 BITFIELD(53, 1) /* index 745 */,
8145 TILEPRO_OPC_SUBS_SN, TILEPRO_OPC_NONE,
8146 BITFIELD(53, 1) /* index 748 */,
8147 TILEPRO_OPC_ADDBS_U_SN, TILEPRO_OPC_NONE,
8148 BITFIELD(53, 1) /* index 751 */,
8149 TILEPRO_OPC_ADDHS_SN, TILEPRO_OPC_NONE,
8150 BITFIELD(53, 1) /* index 754 */,
8151 TILEPRO_OPC_SUBBS_U_SN, TILEPRO_OPC_NONE,
8152 BITFIELD(53, 1) /* index 757 */,
8153 TILEPRO_OPC_SUBHS_SN, TILEPRO_OPC_NONE,
8154 BITFIELD(53, 1) /* index 760 */,
8155 TILEPRO_OPC_PACKHS_SN, TILEPRO_OPC_NONE,
8156 BITFIELD(53, 1) /* index 763 */,
8157 TILEPRO_OPC_PACKBS_U_SN, TILEPRO_OPC_NONE,
8158 BITFIELD(37, 2) /* index 766 */,
8159 TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN,
8160 CHILD(771),
8161 BITFIELD(39, 2) /* index 771 */,
8162 TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN,
8163 CHILD(776),
8164 BITFIELD(41, 2) /* index 776 */,
8165 TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN, TILEPRO_OPC_ADDLI_SN,
8166 TILEPRO_OPC_MOVELI_SN,
8167 BITFIELD(37, 2) /* index 781 */,
8168 TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, CHILD(786),
8169 BITFIELD(39, 2) /* index 786 */,
8170 TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, CHILD(791),
8171 BITFIELD(41, 2) /* index 791 */,
8172 TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_ADDLI, TILEPRO_OPC_MOVELI,
8173 BITFIELD(31, 2) /* index 796 */,
8174 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(801),
8175 BITFIELD(33, 2) /* index 801 */,
8176 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(806),
8177 BITFIELD(35, 2) /* index 806 */,
8178 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(811),
8179 BITFIELD(37, 2) /* index 811 */,
8180 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(816),
8181 BITFIELD(39, 2) /* index 816 */,
8182 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, CHILD(821),
8183 BITFIELD(41, 2) /* index 821 */,
8184 TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_AULI, TILEPRO_OPC_INFOL,
8185 BITFIELD(31, 4) /* index 826 */,
8186 TILEPRO_OPC_BZ, TILEPRO_OPC_BZT, TILEPRO_OPC_BNZ, TILEPRO_OPC_BNZT,
8187 TILEPRO_OPC_BGZ, TILEPRO_OPC_BGZT, TILEPRO_OPC_BGEZ, TILEPRO_OPC_BGEZT,
8188 TILEPRO_OPC_BLZ, TILEPRO_OPC_BLZT, TILEPRO_OPC_BLEZ, TILEPRO_OPC_BLEZT,
8189 TILEPRO_OPC_BBS, TILEPRO_OPC_BBST, TILEPRO_OPC_BBNS, TILEPRO_OPC_BBNST,
8190 BITFIELD(31, 4) /* index 843 */,
8191 TILEPRO_OPC_BZ_SN, TILEPRO_OPC_BZT_SN, TILEPRO_OPC_BNZ_SN,
8192 TILEPRO_OPC_BNZT_SN, TILEPRO_OPC_BGZ_SN, TILEPRO_OPC_BGZT_SN,
8193 TILEPRO_OPC_BGEZ_SN, TILEPRO_OPC_BGEZT_SN, TILEPRO_OPC_BLZ_SN,
8194 TILEPRO_OPC_BLZT_SN, TILEPRO_OPC_BLEZ_SN, TILEPRO_OPC_BLEZT_SN,
8195 TILEPRO_OPC_BBS_SN, TILEPRO_OPC_BBST_SN, TILEPRO_OPC_BBNS_SN,
8196 TILEPRO_OPC_BBNST_SN,
8197 BITFIELD(51, 3) /* index 860 */,
8198 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDIB, TILEPRO_OPC_ADDIH, TILEPRO_OPC_ADDI,
8199 CHILD(869), TILEPRO_OPC_MAXIB_U, TILEPRO_OPC_MAXIH, TILEPRO_OPC_MFSPR,
8200 BITFIELD(31, 2) /* index 869 */,
8201 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(874),
8202 BITFIELD(33, 2) /* index 874 */,
8203 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(879),
8204 BITFIELD(35, 2) /* index 879 */,
8205 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(884),
8206 BITFIELD(37, 2) /* index 884 */,
8207 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(889),
8208 BITFIELD(39, 2) /* index 889 */,
8209 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(894),
8210 BITFIELD(41, 2) /* index 894 */,
8211 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_INFO,
8212 BITFIELD(51, 3) /* index 899 */,
8213 TILEPRO_OPC_MINIB_U, TILEPRO_OPC_MINIH, TILEPRO_OPC_MTSPR, CHILD(908),
8214 TILEPRO_OPC_SEQIB, TILEPRO_OPC_SEQIH, TILEPRO_OPC_SEQI, TILEPRO_OPC_SLTIB,
8215 BITFIELD(37, 2) /* index 908 */,
8216 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(913),
8217 BITFIELD(39, 2) /* index 913 */,
8218 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(918),
8219 BITFIELD(41, 2) /* index 918 */,
8220 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_MOVEI,
8221 BITFIELD(51, 3) /* index 923 */,
8222 TILEPRO_OPC_SLTIB_U, TILEPRO_OPC_SLTIH, TILEPRO_OPC_SLTIH_U,
8223 TILEPRO_OPC_SLTI, TILEPRO_OPC_SLTI_U, TILEPRO_OPC_XORI, TILEPRO_OPC_LBADD,
8224 TILEPRO_OPC_LBADD_U,
8225 BITFIELD(51, 3) /* index 932 */,
8226 TILEPRO_OPC_LHADD, TILEPRO_OPC_LHADD_U, TILEPRO_OPC_LWADD,
8227 TILEPRO_OPC_LWADD_NA, TILEPRO_OPC_SBADD, TILEPRO_OPC_SHADD,
8228 TILEPRO_OPC_SWADD, TILEPRO_OPC_NONE,
8229 BITFIELD(51, 3) /* index 941 */,
8230 TILEPRO_OPC_NONE, TILEPRO_OPC_ADDIB_SN, TILEPRO_OPC_ADDIH_SN,
8231 TILEPRO_OPC_ADDI_SN, TILEPRO_OPC_ANDI_SN, TILEPRO_OPC_MAXIB_U_SN,
8232 TILEPRO_OPC_MAXIH_SN, TILEPRO_OPC_MFSPR,
8233 BITFIELD(51, 3) /* index 950 */,
8234 TILEPRO_OPC_MINIB_U_SN, TILEPRO_OPC_MINIH_SN, TILEPRO_OPC_MTSPR, CHILD(959),
8235 TILEPRO_OPC_SEQIB_SN, TILEPRO_OPC_SEQIH_SN, TILEPRO_OPC_SEQI_SN,
8236 TILEPRO_OPC_SLTIB_SN,
8237 BITFIELD(37, 2) /* index 959 */,
8238 TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, CHILD(964),
8239 BITFIELD(39, 2) /* index 964 */,
8240 TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, CHILD(969),
8241 BITFIELD(41, 2) /* index 969 */,
8242 TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN, TILEPRO_OPC_ORI_SN,
8243 TILEPRO_OPC_MOVEI_SN,
8244 BITFIELD(51, 3) /* index 974 */,
8245 TILEPRO_OPC_SLTIB_U_SN, TILEPRO_OPC_SLTIH_SN, TILEPRO_OPC_SLTIH_U_SN,
8246 TILEPRO_OPC_SLTI_SN, TILEPRO_OPC_SLTI_U_SN, TILEPRO_OPC_XORI_SN,
8247 TILEPRO_OPC_LBADD_SN, TILEPRO_OPC_LBADD_U_SN,
8248 BITFIELD(51, 3) /* index 983 */,
8249 TILEPRO_OPC_LHADD_SN, TILEPRO_OPC_LHADD_U_SN, TILEPRO_OPC_LWADD_SN,
8250 TILEPRO_OPC_LWADD_NA_SN, TILEPRO_OPC_SBADD, TILEPRO_OPC_SHADD,
8251 TILEPRO_OPC_SWADD, TILEPRO_OPC_NONE,
8252 BITFIELD(46, 7) /* index 992 */,
8253 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8254 CHILD(1121), CHILD(1121), CHILD(1121), CHILD(1121), CHILD(1124),
8255 CHILD(1124), CHILD(1124), CHILD(1124), CHILD(1127), CHILD(1127),
8256 CHILD(1127), CHILD(1127), CHILD(1130), CHILD(1130), CHILD(1130),
8257 CHILD(1130), CHILD(1133), CHILD(1133), CHILD(1133), CHILD(1133),
8258 CHILD(1136), CHILD(1136), CHILD(1136), CHILD(1136), CHILD(1139),
8259 CHILD(1139), CHILD(1139), CHILD(1139), CHILD(1142), CHILD(1142),
8260 CHILD(1142), CHILD(1142), CHILD(1145), CHILD(1145), CHILD(1145),
8261 CHILD(1145), CHILD(1148), CHILD(1148), CHILD(1148), CHILD(1148),
8262 CHILD(1151), CHILD(1242), CHILD(1290), CHILD(1323), TILEPRO_OPC_NONE,
8263 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8264 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8265 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8266 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8267 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8268 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8269 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8270 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8271 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8272 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8273 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8274 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8275 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8276 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8277 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8278 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8279 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8280 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8281 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8282 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8283 BITFIELD(53, 1) /* index 1121 */,
8284 TILEPRO_OPC_RLI, TILEPRO_OPC_NONE,
8285 BITFIELD(53, 1) /* index 1124 */,
8286 TILEPRO_OPC_SHLIB, TILEPRO_OPC_NONE,
8287 BITFIELD(53, 1) /* index 1127 */,
8288 TILEPRO_OPC_SHLIH, TILEPRO_OPC_NONE,
8289 BITFIELD(53, 1) /* index 1130 */,
8290 TILEPRO_OPC_SHLI, TILEPRO_OPC_NONE,
8291 BITFIELD(53, 1) /* index 1133 */,
8292 TILEPRO_OPC_SHRIB, TILEPRO_OPC_NONE,
8293 BITFIELD(53, 1) /* index 1136 */,
8294 TILEPRO_OPC_SHRIH, TILEPRO_OPC_NONE,
8295 BITFIELD(53, 1) /* index 1139 */,
8296 TILEPRO_OPC_SHRI, TILEPRO_OPC_NONE,
8297 BITFIELD(53, 1) /* index 1142 */,
8298 TILEPRO_OPC_SRAIB, TILEPRO_OPC_NONE,
8299 BITFIELD(53, 1) /* index 1145 */,
8300 TILEPRO_OPC_SRAIH, TILEPRO_OPC_NONE,
8301 BITFIELD(53, 1) /* index 1148 */,
8302 TILEPRO_OPC_SRAI, TILEPRO_OPC_NONE,
8303 BITFIELD(43, 3) /* index 1151 */,
8304 TILEPRO_OPC_NONE, CHILD(1160), CHILD(1163), CHILD(1166), CHILD(1169),
8305 CHILD(1172), CHILD(1175), CHILD(1178),
8306 BITFIELD(53, 1) /* index 1160 */,
8307 TILEPRO_OPC_DRAIN, TILEPRO_OPC_NONE,
8308 BITFIELD(53, 1) /* index 1163 */,
8309 TILEPRO_OPC_DTLBPR, TILEPRO_OPC_NONE,
8310 BITFIELD(53, 1) /* index 1166 */,
8311 TILEPRO_OPC_FINV, TILEPRO_OPC_NONE,
8312 BITFIELD(53, 1) /* index 1169 */,
8313 TILEPRO_OPC_FLUSH, TILEPRO_OPC_NONE,
8314 BITFIELD(53, 1) /* index 1172 */,
8315 TILEPRO_OPC_FNOP, TILEPRO_OPC_NONE,
8316 BITFIELD(53, 1) /* index 1175 */,
8317 TILEPRO_OPC_ICOH, TILEPRO_OPC_NONE,
8318 BITFIELD(31, 2) /* index 1178 */,
8319 CHILD(1183), CHILD(1211), CHILD(1239), CHILD(1239),
8320 BITFIELD(53, 1) /* index 1183 */,
8321 CHILD(1186), TILEPRO_OPC_NONE,
8322 BITFIELD(33, 2) /* index 1186 */,
8323 TILEPRO_OPC_ILL, TILEPRO_OPC_ILL, TILEPRO_OPC_ILL, CHILD(1191),
8324 BITFIELD(35, 2) /* index 1191 */,
8325 TILEPRO_OPC_ILL, CHILD(1196), TILEPRO_OPC_ILL, TILEPRO_OPC_ILL,
8326 BITFIELD(37, 2) /* index 1196 */,
8327 TILEPRO_OPC_ILL, CHILD(1201), TILEPRO_OPC_ILL, TILEPRO_OPC_ILL,
8328 BITFIELD(39, 2) /* index 1201 */,
8329 TILEPRO_OPC_ILL, CHILD(1206), TILEPRO_OPC_ILL, TILEPRO_OPC_ILL,
8330 BITFIELD(41, 2) /* index 1206 */,
8331 TILEPRO_OPC_ILL, TILEPRO_OPC_ILL, TILEPRO_OPC_BPT, TILEPRO_OPC_ILL,
8332 BITFIELD(53, 1) /* index 1211 */,
8333 CHILD(1214), TILEPRO_OPC_NONE,
8334 BITFIELD(33, 2) /* index 1214 */,
8335 TILEPRO_OPC_ILL, TILEPRO_OPC_ILL, TILEPRO_OPC_ILL, CHILD(1219),
8336 BITFIELD(35, 2) /* index 1219 */,
8337 TILEPRO_OPC_ILL, CHILD(1224), TILEPRO_OPC_ILL, TILEPRO_OPC_ILL,
8338 BITFIELD(37, 2) /* index 1224 */,
8339 TILEPRO_OPC_ILL, CHILD(1229), TILEPRO_OPC_ILL, TILEPRO_OPC_ILL,
8340 BITFIELD(39, 2) /* index 1229 */,
8341 TILEPRO_OPC_ILL, CHILD(1234), TILEPRO_OPC_ILL, TILEPRO_OPC_ILL,
8342 BITFIELD(41, 2) /* index 1234 */,
8343 TILEPRO_OPC_ILL, TILEPRO_OPC_ILL, TILEPRO_OPC_RAISE, TILEPRO_OPC_ILL,
8344 BITFIELD(53, 1) /* index 1239 */,
8345 TILEPRO_OPC_ILL, TILEPRO_OPC_NONE,
8346 BITFIELD(43, 3) /* index 1242 */,
8347 CHILD(1251), CHILD(1254), CHILD(1257), CHILD(1275), CHILD(1278),
8348 CHILD(1281), CHILD(1284), CHILD(1287),
8349 BITFIELD(53, 1) /* index 1251 */,
8350 TILEPRO_OPC_INV, TILEPRO_OPC_NONE,
8351 BITFIELD(53, 1) /* index 1254 */,
8352 TILEPRO_OPC_IRET, TILEPRO_OPC_NONE,
8353 BITFIELD(53, 1) /* index 1257 */,
8354 CHILD(1260), TILEPRO_OPC_NONE,
8355 BITFIELD(31, 2) /* index 1260 */,
8356 TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_LB, CHILD(1265),
8357 BITFIELD(33, 2) /* index 1265 */,
8358 TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_LB, CHILD(1270),
8359 BITFIELD(35, 2) /* index 1270 */,
8360 TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_PREFETCH,
8361 BITFIELD(53, 1) /* index 1275 */,
8362 TILEPRO_OPC_LB_U, TILEPRO_OPC_NONE,
8363 BITFIELD(53, 1) /* index 1278 */,
8364 TILEPRO_OPC_LH, TILEPRO_OPC_NONE,
8365 BITFIELD(53, 1) /* index 1281 */,
8366 TILEPRO_OPC_LH_U, TILEPRO_OPC_NONE,
8367 BITFIELD(53, 1) /* index 1284 */,
8368 TILEPRO_OPC_LW, TILEPRO_OPC_NONE,
8369 BITFIELD(53, 1) /* index 1287 */,
8370 TILEPRO_OPC_MF, TILEPRO_OPC_NONE,
8371 BITFIELD(43, 3) /* index 1290 */,
8372 CHILD(1299), CHILD(1302), CHILD(1305), CHILD(1308), CHILD(1311),
8373 CHILD(1314), CHILD(1317), CHILD(1320),
8374 BITFIELD(53, 1) /* index 1299 */,
8375 TILEPRO_OPC_NAP, TILEPRO_OPC_NONE,
8376 BITFIELD(53, 1) /* index 1302 */,
8377 TILEPRO_OPC_NOP, TILEPRO_OPC_NONE,
8378 BITFIELD(53, 1) /* index 1305 */,
8379 TILEPRO_OPC_SWINT0, TILEPRO_OPC_NONE,
8380 BITFIELD(53, 1) /* index 1308 */,
8381 TILEPRO_OPC_SWINT1, TILEPRO_OPC_NONE,
8382 BITFIELD(53, 1) /* index 1311 */,
8383 TILEPRO_OPC_SWINT2, TILEPRO_OPC_NONE,
8384 BITFIELD(53, 1) /* index 1314 */,
8385 TILEPRO_OPC_SWINT3, TILEPRO_OPC_NONE,
8386 BITFIELD(53, 1) /* index 1317 */,
8387 TILEPRO_OPC_TNS, TILEPRO_OPC_NONE,
8388 BITFIELD(53, 1) /* index 1320 */,
8389 TILEPRO_OPC_WH64, TILEPRO_OPC_NONE,
8390 BITFIELD(43, 2) /* index 1323 */,
8391 CHILD(1328), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8392 BITFIELD(45, 1) /* index 1328 */,
8393 CHILD(1331), TILEPRO_OPC_NONE,
8394 BITFIELD(53, 1) /* index 1331 */,
8395 TILEPRO_OPC_LW_NA, TILEPRO_OPC_NONE,
8396 BITFIELD(46, 7) /* index 1334 */,
8397 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8398 CHILD(1463), CHILD(1463), CHILD(1463), CHILD(1463), CHILD(1466),
8399 CHILD(1466), CHILD(1466), CHILD(1466), CHILD(1469), CHILD(1469),
8400 CHILD(1469), CHILD(1469), CHILD(1472), CHILD(1472), CHILD(1472),
8401 CHILD(1472), CHILD(1475), CHILD(1475), CHILD(1475), CHILD(1475),
8402 CHILD(1478), CHILD(1478), CHILD(1478), CHILD(1478), CHILD(1481),
8403 CHILD(1481), CHILD(1481), CHILD(1481), CHILD(1484), CHILD(1484),
8404 CHILD(1484), CHILD(1484), CHILD(1487), CHILD(1487), CHILD(1487),
8405 CHILD(1487), CHILD(1490), CHILD(1490), CHILD(1490), CHILD(1490),
8406 CHILD(1151), CHILD(1493), CHILD(1517), CHILD(1529), TILEPRO_OPC_NONE,
8407 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8408 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8409 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8410 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8411 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8412 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8413 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8414 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8415 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8416 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8417 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8418 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8419 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8420 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8421 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8422 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8423 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8424 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8425 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8426 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8427 BITFIELD(53, 1) /* index 1463 */,
8428 TILEPRO_OPC_RLI_SN, TILEPRO_OPC_NONE,
8429 BITFIELD(53, 1) /* index 1466 */,
8430 TILEPRO_OPC_SHLIB_SN, TILEPRO_OPC_NONE,
8431 BITFIELD(53, 1) /* index 1469 */,
8432 TILEPRO_OPC_SHLIH_SN, TILEPRO_OPC_NONE,
8433 BITFIELD(53, 1) /* index 1472 */,
8434 TILEPRO_OPC_SHLI_SN, TILEPRO_OPC_NONE,
8435 BITFIELD(53, 1) /* index 1475 */,
8436 TILEPRO_OPC_SHRIB_SN, TILEPRO_OPC_NONE,
8437 BITFIELD(53, 1) /* index 1478 */,
8438 TILEPRO_OPC_SHRIH_SN, TILEPRO_OPC_NONE,
8439 BITFIELD(53, 1) /* index 1481 */,
8440 TILEPRO_OPC_SHRI_SN, TILEPRO_OPC_NONE,
8441 BITFIELD(53, 1) /* index 1484 */,
8442 TILEPRO_OPC_SRAIB_SN, TILEPRO_OPC_NONE,
8443 BITFIELD(53, 1) /* index 1487 */,
8444 TILEPRO_OPC_SRAIH_SN, TILEPRO_OPC_NONE,
8445 BITFIELD(53, 1) /* index 1490 */,
8446 TILEPRO_OPC_SRAI_SN, TILEPRO_OPC_NONE,
8447 BITFIELD(43, 3) /* index 1493 */,
8448 CHILD(1251), CHILD(1254), CHILD(1502), CHILD(1505), CHILD(1508),
8449 CHILD(1511), CHILD(1514), CHILD(1287),
8450 BITFIELD(53, 1) /* index 1502 */,
8451 TILEPRO_OPC_LB_SN, TILEPRO_OPC_NONE,
8452 BITFIELD(53, 1) /* index 1505 */,
8453 TILEPRO_OPC_LB_U_SN, TILEPRO_OPC_NONE,
8454 BITFIELD(53, 1) /* index 1508 */,
8455 TILEPRO_OPC_LH_SN, TILEPRO_OPC_NONE,
8456 BITFIELD(53, 1) /* index 1511 */,
8457 TILEPRO_OPC_LH_U_SN, TILEPRO_OPC_NONE,
8458 BITFIELD(53, 1) /* index 1514 */,
8459 TILEPRO_OPC_LW_SN, TILEPRO_OPC_NONE,
8460 BITFIELD(43, 3) /* index 1517 */,
8461 CHILD(1299), CHILD(1302), CHILD(1305), CHILD(1308), CHILD(1311),
8462 CHILD(1314), CHILD(1526), CHILD(1320),
8463 BITFIELD(53, 1) /* index 1526 */,
8464 TILEPRO_OPC_TNS_SN, TILEPRO_OPC_NONE,
8465 BITFIELD(43, 2) /* index 1529 */,
8466 CHILD(1534), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8467 BITFIELD(45, 1) /* index 1534 */,
8468 CHILD(1537), TILEPRO_OPC_NONE,
8469 BITFIELD(53, 1) /* index 1537 */,
8470 TILEPRO_OPC_LW_NA_SN, TILEPRO_OPC_NONE,
8473 static const unsigned short decode_Y0_fsm[168] =
8475 BITFIELD(27, 4) /* index 0 */,
8476 TILEPRO_OPC_NONE, CHILD(17), CHILD(22), CHILD(27), CHILD(47), CHILD(52),
8477 CHILD(57), CHILD(62), CHILD(67), TILEPRO_OPC_ADDI, CHILD(72), CHILD(102),
8478 TILEPRO_OPC_SEQI, CHILD(117), TILEPRO_OPC_SLTI, TILEPRO_OPC_SLTI_U,
8479 BITFIELD(18, 2) /* index 17 */,
8480 TILEPRO_OPC_ADD, TILEPRO_OPC_S1A, TILEPRO_OPC_S2A, TILEPRO_OPC_SUB,
8481 BITFIELD(18, 2) /* index 22 */,
8482 TILEPRO_OPC_MNZ, TILEPRO_OPC_MVNZ, TILEPRO_OPC_MVZ, TILEPRO_OPC_MZ,
8483 BITFIELD(18, 2) /* index 27 */,
8484 TILEPRO_OPC_AND, TILEPRO_OPC_NOR, CHILD(32), TILEPRO_OPC_XOR,
8485 BITFIELD(12, 2) /* index 32 */,
8486 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(37),
8487 BITFIELD(14, 2) /* index 37 */,
8488 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(42),
8489 BITFIELD(16, 2) /* index 42 */,
8490 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_MOVE,
8491 BITFIELD(18, 2) /* index 47 */,
8492 TILEPRO_OPC_RL, TILEPRO_OPC_SHL, TILEPRO_OPC_SHR, TILEPRO_OPC_SRA,
8493 BITFIELD(18, 2) /* index 52 */,
8494 TILEPRO_OPC_SLTE, TILEPRO_OPC_SLTE_U, TILEPRO_OPC_SLT, TILEPRO_OPC_SLT_U,
8495 BITFIELD(18, 2) /* index 57 */,
8496 TILEPRO_OPC_MULHLSA_UU, TILEPRO_OPC_S3A, TILEPRO_OPC_SEQ, TILEPRO_OPC_SNE,
8497 BITFIELD(18, 2) /* index 62 */,
8498 TILEPRO_OPC_MULHH_SS, TILEPRO_OPC_MULHH_UU, TILEPRO_OPC_MULLL_SS,
8499 TILEPRO_OPC_MULLL_UU,
8500 BITFIELD(18, 2) /* index 67 */,
8501 TILEPRO_OPC_MULHHA_SS, TILEPRO_OPC_MULHHA_UU, TILEPRO_OPC_MULLLA_SS,
8502 TILEPRO_OPC_MULLLA_UU,
8503 BITFIELD(0, 2) /* index 72 */,
8504 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(77),
8505 BITFIELD(2, 2) /* index 77 */,
8506 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(82),
8507 BITFIELD(4, 2) /* index 82 */,
8508 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(87),
8509 BITFIELD(6, 2) /* index 87 */,
8510 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(92),
8511 BITFIELD(8, 2) /* index 92 */,
8512 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(97),
8513 BITFIELD(10, 2) /* index 97 */,
8514 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_INFO,
8515 BITFIELD(6, 2) /* index 102 */,
8516 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(107),
8517 BITFIELD(8, 2) /* index 107 */,
8518 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(112),
8519 BITFIELD(10, 2) /* index 112 */,
8520 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_MOVEI,
8521 BITFIELD(15, 5) /* index 117 */,
8522 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8523 TILEPRO_OPC_RLI, TILEPRO_OPC_RLI, TILEPRO_OPC_RLI, TILEPRO_OPC_RLI,
8524 TILEPRO_OPC_SHLI, TILEPRO_OPC_SHLI, TILEPRO_OPC_SHLI, TILEPRO_OPC_SHLI,
8525 TILEPRO_OPC_SHRI, TILEPRO_OPC_SHRI, TILEPRO_OPC_SHRI, TILEPRO_OPC_SHRI,
8526 TILEPRO_OPC_SRAI, TILEPRO_OPC_SRAI, TILEPRO_OPC_SRAI, TILEPRO_OPC_SRAI,
8527 CHILD(150), CHILD(159), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8528 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8529 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8530 BITFIELD(12, 3) /* index 150 */,
8531 TILEPRO_OPC_NONE, TILEPRO_OPC_BITX, TILEPRO_OPC_BYTEX, TILEPRO_OPC_CLZ,
8532 TILEPRO_OPC_CTZ, TILEPRO_OPC_FNOP, TILEPRO_OPC_NOP, TILEPRO_OPC_PCNT,
8533 BITFIELD(12, 3) /* index 159 */,
8534 TILEPRO_OPC_TBLIDXB0, TILEPRO_OPC_TBLIDXB1, TILEPRO_OPC_TBLIDXB2,
8535 TILEPRO_OPC_TBLIDXB3, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8536 TILEPRO_OPC_NONE,
8539 static const unsigned short decode_Y1_fsm[140] =
8541 BITFIELD(59, 4) /* index 0 */,
8542 TILEPRO_OPC_NONE, CHILD(17), CHILD(22), CHILD(27), CHILD(47), CHILD(52),
8543 CHILD(57), TILEPRO_OPC_ADDI, CHILD(62), CHILD(92), TILEPRO_OPC_SEQI,
8544 CHILD(107), TILEPRO_OPC_SLTI, TILEPRO_OPC_SLTI_U, TILEPRO_OPC_NONE,
8545 TILEPRO_OPC_NONE,
8546 BITFIELD(49, 2) /* index 17 */,
8547 TILEPRO_OPC_ADD, TILEPRO_OPC_S1A, TILEPRO_OPC_S2A, TILEPRO_OPC_SUB,
8548 BITFIELD(49, 2) /* index 22 */,
8549 TILEPRO_OPC_NONE, TILEPRO_OPC_MNZ, TILEPRO_OPC_MZ, TILEPRO_OPC_NONE,
8550 BITFIELD(49, 2) /* index 27 */,
8551 TILEPRO_OPC_AND, TILEPRO_OPC_NOR, CHILD(32), TILEPRO_OPC_XOR,
8552 BITFIELD(43, 2) /* index 32 */,
8553 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(37),
8554 BITFIELD(45, 2) /* index 37 */,
8555 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, CHILD(42),
8556 BITFIELD(47, 2) /* index 42 */,
8557 TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_OR, TILEPRO_OPC_MOVE,
8558 BITFIELD(49, 2) /* index 47 */,
8559 TILEPRO_OPC_RL, TILEPRO_OPC_SHL, TILEPRO_OPC_SHR, TILEPRO_OPC_SRA,
8560 BITFIELD(49, 2) /* index 52 */,
8561 TILEPRO_OPC_SLTE, TILEPRO_OPC_SLTE_U, TILEPRO_OPC_SLT, TILEPRO_OPC_SLT_U,
8562 BITFIELD(49, 2) /* index 57 */,
8563 TILEPRO_OPC_NONE, TILEPRO_OPC_S3A, TILEPRO_OPC_SEQ, TILEPRO_OPC_SNE,
8564 BITFIELD(31, 2) /* index 62 */,
8565 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(67),
8566 BITFIELD(33, 2) /* index 67 */,
8567 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(72),
8568 BITFIELD(35, 2) /* index 72 */,
8569 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(77),
8570 BITFIELD(37, 2) /* index 77 */,
8571 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(82),
8572 BITFIELD(39, 2) /* index 82 */,
8573 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, CHILD(87),
8574 BITFIELD(41, 2) /* index 87 */,
8575 TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_ANDI, TILEPRO_OPC_INFO,
8576 BITFIELD(37, 2) /* index 92 */,
8577 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(97),
8578 BITFIELD(39, 2) /* index 97 */,
8579 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, CHILD(102),
8580 BITFIELD(41, 2) /* index 102 */,
8581 TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_ORI, TILEPRO_OPC_MOVEI,
8582 BITFIELD(48, 3) /* index 107 */,
8583 TILEPRO_OPC_NONE, TILEPRO_OPC_RLI, TILEPRO_OPC_SHLI, TILEPRO_OPC_SHRI,
8584 TILEPRO_OPC_SRAI, CHILD(116), TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8585 BITFIELD(43, 3) /* index 116 */,
8586 TILEPRO_OPC_NONE, CHILD(125), CHILD(130), CHILD(135), TILEPRO_OPC_NONE,
8587 TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8588 BITFIELD(46, 2) /* index 125 */,
8589 TILEPRO_OPC_FNOP, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8590 BITFIELD(46, 2) /* index 130 */,
8591 TILEPRO_OPC_ILL, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8592 BITFIELD(46, 2) /* index 135 */,
8593 TILEPRO_OPC_NOP, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE, TILEPRO_OPC_NONE,
8596 static const unsigned short decode_Y2_fsm[24] =
8598 BITFIELD(56, 3) /* index 0 */,
8599 CHILD(9), TILEPRO_OPC_LB_U, TILEPRO_OPC_LH, TILEPRO_OPC_LH_U,
8600 TILEPRO_OPC_LW, TILEPRO_OPC_SB, TILEPRO_OPC_SH, TILEPRO_OPC_SW,
8601 BITFIELD(20, 2) /* index 9 */,
8602 TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_LB, CHILD(14),
8603 BITFIELD(22, 2) /* index 14 */,
8604 TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_LB, CHILD(19),
8605 BITFIELD(24, 2) /* index 19 */,
8606 TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_LB, TILEPRO_OPC_PREFETCH,
8609 #undef BITFIELD
8610 #undef CHILD
8612 const unsigned short * const
8613 tilepro_bundle_decoder_fsms[TILEPRO_NUM_PIPELINE_ENCODINGS] =
8615 decode_X0_fsm,
8616 decode_X1_fsm,
8617 decode_Y0_fsm,
8618 decode_Y1_fsm,
8619 decode_Y2_fsm
8622 #ifndef DISASM_ONLY
8623 const struct tilepro_sn_opcode tilepro_sn_opcodes[23] =
8625 { "bz", TILEPRO_SN_OPC_BZ,
8626 1 /* num_operands */,
8627 /* operands */
8628 { 38 },
8629 /* fixed_bit_mask */
8630 0xfc00,
8631 /* fixed_bit_value */
8632 0xe000
8634 { "bnz", TILEPRO_SN_OPC_BNZ,
8635 1 /* num_operands */,
8636 /* operands */
8637 { 38 },
8638 /* fixed_bit_mask */
8639 0xfc00,
8640 /* fixed_bit_value */
8641 0xe400
8643 { "jrr", TILEPRO_SN_OPC_JRR,
8644 1 /* num_operands */,
8645 /* operands */
8646 { 39 },
8647 /* fixed_bit_mask */
8648 0xff00,
8649 /* fixed_bit_value */
8650 0x0600
8652 { "fnop", TILEPRO_SN_OPC_FNOP,
8653 0 /* num_operands */,
8654 /* operands */
8655 { 0, },
8656 /* fixed_bit_mask */
8657 0xffff,
8658 /* fixed_bit_value */
8659 0x0003
8661 { "blz", TILEPRO_SN_OPC_BLZ,
8662 1 /* num_operands */,
8663 /* operands */
8664 { 38 },
8665 /* fixed_bit_mask */
8666 0xfc00,
8667 /* fixed_bit_value */
8668 0xf000
8670 { "nop", TILEPRO_SN_OPC_NOP,
8671 0 /* num_operands */,
8672 /* operands */
8673 { 0, },
8674 /* fixed_bit_mask */
8675 0xffff,
8676 /* fixed_bit_value */
8677 0x0002
8679 { "movei", TILEPRO_SN_OPC_MOVEI,
8680 1 /* num_operands */,
8681 /* operands */
8682 { 40 },
8683 /* fixed_bit_mask */
8684 0xff00,
8685 /* fixed_bit_value */
8686 0x0400
8688 { "move", TILEPRO_SN_OPC_MOVE,
8689 2 /* num_operands */,
8690 /* operands */
8691 { 41, 42 },
8692 /* fixed_bit_mask */
8693 0xfff0,
8694 /* fixed_bit_value */
8695 0x0080
8697 { "bgez", TILEPRO_SN_OPC_BGEZ,
8698 1 /* num_operands */,
8699 /* operands */
8700 { 38 },
8701 /* fixed_bit_mask */
8702 0xfc00,
8703 /* fixed_bit_value */
8704 0xf400
8706 { "jr", TILEPRO_SN_OPC_JR,
8707 1 /* num_operands */,
8708 /* operands */
8709 { 42 },
8710 /* fixed_bit_mask */
8711 0xfff0,
8712 /* fixed_bit_value */
8713 0x0040
8715 { "blez", TILEPRO_SN_OPC_BLEZ,
8716 1 /* num_operands */,
8717 /* operands */
8718 { 38 },
8719 /* fixed_bit_mask */
8720 0xfc00,
8721 /* fixed_bit_value */
8722 0xec00
8724 { "bbns", TILEPRO_SN_OPC_BBNS,
8725 1 /* num_operands */,
8726 /* operands */
8727 { 38 },
8728 /* fixed_bit_mask */
8729 0xfc00,
8730 /* fixed_bit_value */
8731 0xfc00
8733 { "jalrr", TILEPRO_SN_OPC_JALRR,
8734 1 /* num_operands */,
8735 /* operands */
8736 { 39 },
8737 /* fixed_bit_mask */
8738 0xff00,
8739 /* fixed_bit_value */
8740 0x0700
8742 { "bpt", TILEPRO_SN_OPC_BPT,
8743 0 /* num_operands */,
8744 /* operands */
8745 { 0, },
8746 /* fixed_bit_mask */
8747 0xffff,
8748 /* fixed_bit_value */
8749 0x0001
8751 { "jalr", TILEPRO_SN_OPC_JALR,
8752 1 /* num_operands */,
8753 /* operands */
8754 { 42 },
8755 /* fixed_bit_mask */
8756 0xfff0,
8757 /* fixed_bit_value */
8758 0x0050
8760 { "shr1", TILEPRO_SN_OPC_SHR1,
8761 2 /* num_operands */,
8762 /* operands */
8763 { 41, 42 },
8764 /* fixed_bit_mask */
8765 0xfff0,
8766 /* fixed_bit_value */
8767 0x0090
8769 { "bgz", TILEPRO_SN_OPC_BGZ,
8770 1 /* num_operands */,
8771 /* operands */
8772 { 38 },
8773 /* fixed_bit_mask */
8774 0xfc00,
8775 /* fixed_bit_value */
8776 0xe800
8778 { "bbs", TILEPRO_SN_OPC_BBS,
8779 1 /* num_operands */,
8780 /* operands */
8781 { 38 },
8782 /* fixed_bit_mask */
8783 0xfc00,
8784 /* fixed_bit_value */
8785 0xf800
8787 { "shl8ii", TILEPRO_SN_OPC_SHL8II,
8788 1 /* num_operands */,
8789 /* operands */
8790 { 39 },
8791 /* fixed_bit_mask */
8792 0xff00,
8793 /* fixed_bit_value */
8794 0x0300
8796 { "addi", TILEPRO_SN_OPC_ADDI,
8797 1 /* num_operands */,
8798 /* operands */
8799 { 40 },
8800 /* fixed_bit_mask */
8801 0xff00,
8802 /* fixed_bit_value */
8803 0x0500
8805 { "halt", TILEPRO_SN_OPC_HALT,
8806 0 /* num_operands */,
8807 /* operands */
8808 { 0, },
8809 /* fixed_bit_mask */
8810 0xffff,
8811 /* fixed_bit_value */
8812 0x0000
8814 { "route", TILEPRO_SN_OPC_ROUTE, 0, { 0, }, 0, 0,
8816 { 0, TILEPRO_SN_OPC_NONE, 0, { 0, }, 0, 0,
8820 const unsigned char tilepro_sn_route_encode[6 * 6 * 6] =
8822 0xdf,
8823 0xde,
8824 0xdd,
8825 0xdc,
8826 0xdb,
8827 0xda,
8828 0xb9,
8829 0xb8,
8830 0xa1,
8831 0xa0,
8832 0x11,
8833 0x10,
8834 0x9f,
8835 0x9e,
8836 0x9d,
8837 0x9c,
8838 0x9b,
8839 0x9a,
8840 0x79,
8841 0x78,
8842 0x61,
8843 0x60,
8844 0xb,
8845 0xa,
8846 0x5f,
8847 0x5e,
8848 0x5d,
8849 0x5c,
8850 0x5b,
8851 0x5a,
8852 0x1f,
8853 0x1e,
8854 0x1d,
8855 0x1c,
8856 0x1b,
8857 0x1a,
8858 0xd7,
8859 0xd6,
8860 0xd5,
8861 0xd4,
8862 0xd3,
8863 0xd2,
8864 0xa7,
8865 0xa6,
8866 0xb1,
8867 0xb0,
8868 0x13,
8869 0x12,
8870 0x97,
8871 0x96,
8872 0x95,
8873 0x94,
8874 0x93,
8875 0x92,
8876 0x67,
8877 0x66,
8878 0x71,
8879 0x70,
8880 0x9,
8881 0x8,
8882 0x57,
8883 0x56,
8884 0x55,
8885 0x54,
8886 0x53,
8887 0x52,
8888 0x17,
8889 0x16,
8890 0x15,
8891 0x14,
8892 0x19,
8893 0x18,
8894 0xcf,
8895 0xce,
8896 0xcd,
8897 0xcc,
8898 0xcb,
8899 0xca,
8900 0xaf,
8901 0xae,
8902 0xad,
8903 0xac,
8904 0xab,
8905 0xaa,
8906 0x8f,
8907 0x8e,
8908 0x8d,
8909 0x8c,
8910 0x8b,
8911 0x8a,
8912 0x6f,
8913 0x6e,
8914 0x6d,
8915 0x6c,
8916 0x6b,
8917 0x6a,
8918 0x4f,
8919 0x4e,
8920 0x4d,
8921 0x4c,
8922 0x4b,
8923 0x4a,
8924 0x2f,
8925 0x2e,
8926 0x2d,
8927 0x2c,
8928 0x2b,
8929 0x2a,
8930 0xc9,
8931 0xc8,
8932 0xc5,
8933 0xc4,
8934 0xc3,
8935 0xc2,
8936 0xa9,
8937 0xa8,
8938 0xa5,
8939 0xa4,
8940 0xa3,
8941 0xa2,
8942 0x89,
8943 0x88,
8944 0x85,
8945 0x84,
8946 0x83,
8947 0x82,
8948 0x69,
8949 0x68,
8950 0x65,
8951 0x64,
8952 0x63,
8953 0x62,
8954 0x47,
8955 0x46,
8956 0x45,
8957 0x44,
8958 0x43,
8959 0x42,
8960 0x27,
8961 0x26,
8962 0x25,
8963 0x24,
8964 0x23,
8965 0x22,
8966 0xd9,
8967 0xd8,
8968 0xc1,
8969 0xc0,
8970 0x3b,
8971 0x3a,
8972 0xbf,
8973 0xbe,
8974 0xbd,
8975 0xbc,
8976 0xbb,
8977 0xba,
8978 0x99,
8979 0x98,
8980 0x81,
8981 0x80,
8982 0x31,
8983 0x30,
8984 0x7f,
8985 0x7e,
8986 0x7d,
8987 0x7c,
8988 0x7b,
8989 0x7a,
8990 0x59,
8991 0x58,
8992 0x3d,
8993 0x3c,
8994 0x49,
8995 0x48,
8996 0xf,
8997 0xe,
8998 0xd,
8999 0xc,
9000 0x29,
9001 0x28,
9002 0xc7,
9003 0xc6,
9004 0xd1,
9005 0xd0,
9006 0x39,
9007 0x38,
9008 0xb7,
9009 0xb6,
9010 0xb5,
9011 0xb4,
9012 0xb3,
9013 0xb2,
9014 0x87,
9015 0x86,
9016 0x91,
9017 0x90,
9018 0x33,
9019 0x32,
9020 0x77,
9021 0x76,
9022 0x75,
9023 0x74,
9024 0x73,
9025 0x72,
9026 0x3f,
9027 0x3e,
9028 0x51,
9029 0x50,
9030 0x41,
9031 0x40,
9032 0x37,
9033 0x36,
9034 0x35,
9035 0x34,
9036 0x21,
9037 0x20
9040 const signed char tilepro_sn_route_decode[256][3] =
9042 { -1, -1, -1 },
9043 { -1, -1, -1 },
9044 { -1, -1, -1 },
9045 { -1, -1, -1 },
9046 { -1, -1, -1 },
9047 { -1, -1, -1 },
9048 { -1, -1, -1 },
9049 { -1, -1, -1 },
9050 { 5, 3, 1 },
9051 { 4, 3, 1 },
9052 { 5, 3, 0 },
9053 { 4, 3, 0 },
9054 { 3, 5, 4 },
9055 { 2, 5, 4 },
9056 { 1, 5, 4 },
9057 { 0, 5, 4 },
9058 { 5, 1, 0 },
9059 { 4, 1, 0 },
9060 { 5, 1, 1 },
9061 { 4, 1, 1 },
9062 { 3, 5, 1 },
9063 { 2, 5, 1 },
9064 { 1, 5, 1 },
9065 { 0, 5, 1 },
9066 { 5, 5, 1 },
9067 { 4, 5, 1 },
9068 { 5, 5, 0 },
9069 { 4, 5, 0 },
9070 { 3, 5, 0 },
9071 { 2, 5, 0 },
9072 { 1, 5, 0 },
9073 { 0, 5, 0 },
9074 { 5, 5, 5 },
9075 { 4, 5, 5 },
9076 { 5, 5, 3 },
9077 { 4, 5, 3 },
9078 { 3, 5, 3 },
9079 { 2, 5, 3 },
9080 { 1, 5, 3 },
9081 { 0, 5, 3 },
9082 { 5, 5, 4 },
9083 { 4, 5, 4 },
9084 { 5, 5, 2 },
9085 { 4, 5, 2 },
9086 { 3, 5, 2 },
9087 { 2, 5, 2 },
9088 { 1, 5, 2 },
9089 { 0, 5, 2 },
9090 { 5, 2, 4 },
9091 { 4, 2, 4 },
9092 { 5, 2, 5 },
9093 { 4, 2, 5 },
9094 { 3, 5, 5 },
9095 { 2, 5, 5 },
9096 { 1, 5, 5 },
9097 { 0, 5, 5 },
9098 { 5, 0, 5 },
9099 { 4, 0, 5 },
9100 { 5, 0, 4 },
9101 { 4, 0, 4 },
9102 { 3, 4, 4 },
9103 { 2, 4, 4 },
9104 { 1, 4, 5 },
9105 { 0, 4, 5 },
9106 { 5, 4, 5 },
9107 { 4, 4, 5 },
9108 { 5, 4, 3 },
9109 { 4, 4, 3 },
9110 { 3, 4, 3 },
9111 { 2, 4, 3 },
9112 { 1, 4, 3 },
9113 { 0, 4, 3 },
9114 { 5, 4, 4 },
9115 { 4, 4, 4 },
9116 { 5, 4, 2 },
9117 { 4, 4, 2 },
9118 { 3, 4, 2 },
9119 { 2, 4, 2 },
9120 { 1, 4, 2 },
9121 { 0, 4, 2 },
9122 { 3, 4, 5 },
9123 { 2, 4, 5 },
9124 { 5, 4, 1 },
9125 { 4, 4, 1 },
9126 { 3, 4, 1 },
9127 { 2, 4, 1 },
9128 { 1, 4, 1 },
9129 { 0, 4, 1 },
9130 { 1, 4, 4 },
9131 { 0, 4, 4 },
9132 { 5, 4, 0 },
9133 { 4, 4, 0 },
9134 { 3, 4, 0 },
9135 { 2, 4, 0 },
9136 { 1, 4, 0 },
9137 { 0, 4, 0 },
9138 { 3, 3, 0 },
9139 { 2, 3, 0 },
9140 { 5, 3, 3 },
9141 { 4, 3, 3 },
9142 { 3, 3, 3 },
9143 { 2, 3, 3 },
9144 { 1, 3, 1 },
9145 { 0, 3, 1 },
9146 { 1, 3, 3 },
9147 { 0, 3, 3 },
9148 { 5, 3, 2 },
9149 { 4, 3, 2 },
9150 { 3, 3, 2 },
9151 { 2, 3, 2 },
9152 { 1, 3, 2 },
9153 { 0, 3, 2 },
9154 { 3, 3, 1 },
9155 { 2, 3, 1 },
9156 { 5, 3, 5 },
9157 { 4, 3, 5 },
9158 { 3, 3, 5 },
9159 { 2, 3, 5 },
9160 { 1, 3, 5 },
9161 { 0, 3, 5 },
9162 { 1, 3, 0 },
9163 { 0, 3, 0 },
9164 { 5, 3, 4 },
9165 { 4, 3, 4 },
9166 { 3, 3, 4 },
9167 { 2, 3, 4 },
9168 { 1, 3, 4 },
9169 { 0, 3, 4 },
9170 { 3, 2, 4 },
9171 { 2, 2, 4 },
9172 { 5, 2, 3 },
9173 { 4, 2, 3 },
9174 { 3, 2, 3 },
9175 { 2, 2, 3 },
9176 { 1, 2, 5 },
9177 { 0, 2, 5 },
9178 { 1, 2, 3 },
9179 { 0, 2, 3 },
9180 { 5, 2, 2 },
9181 { 4, 2, 2 },
9182 { 3, 2, 2 },
9183 { 2, 2, 2 },
9184 { 1, 2, 2 },
9185 { 0, 2, 2 },
9186 { 3, 2, 5 },
9187 { 2, 2, 5 },
9188 { 5, 2, 1 },
9189 { 4, 2, 1 },
9190 { 3, 2, 1 },
9191 { 2, 2, 1 },
9192 { 1, 2, 1 },
9193 { 0, 2, 1 },
9194 { 1, 2, 4 },
9195 { 0, 2, 4 },
9196 { 5, 2, 0 },
9197 { 4, 2, 0 },
9198 { 3, 2, 0 },
9199 { 2, 2, 0 },
9200 { 1, 2, 0 },
9201 { 0, 2, 0 },
9202 { 3, 1, 0 },
9203 { 2, 1, 0 },
9204 { 5, 1, 3 },
9205 { 4, 1, 3 },
9206 { 3, 1, 3 },
9207 { 2, 1, 3 },
9208 { 1, 1, 1 },
9209 { 0, 1, 1 },
9210 { 1, 1, 3 },
9211 { 0, 1, 3 },
9212 { 5, 1, 2 },
9213 { 4, 1, 2 },
9214 { 3, 1, 2 },
9215 { 2, 1, 2 },
9216 { 1, 1, 2 },
9217 { 0, 1, 2 },
9218 { 3, 1, 1 },
9219 { 2, 1, 1 },
9220 { 5, 1, 5 },
9221 { 4, 1, 5 },
9222 { 3, 1, 5 },
9223 { 2, 1, 5 },
9224 { 1, 1, 5 },
9225 { 0, 1, 5 },
9226 { 1, 1, 0 },
9227 { 0, 1, 0 },
9228 { 5, 1, 4 },
9229 { 4, 1, 4 },
9230 { 3, 1, 4 },
9231 { 2, 1, 4 },
9232 { 1, 1, 4 },
9233 { 0, 1, 4 },
9234 { 3, 0, 4 },
9235 { 2, 0, 4 },
9236 { 5, 0, 3 },
9237 { 4, 0, 3 },
9238 { 3, 0, 3 },
9239 { 2, 0, 3 },
9240 { 1, 0, 5 },
9241 { 0, 0, 5 },
9242 { 1, 0, 3 },
9243 { 0, 0, 3 },
9244 { 5, 0, 2 },
9245 { 4, 0, 2 },
9246 { 3, 0, 2 },
9247 { 2, 0, 2 },
9248 { 1, 0, 2 },
9249 { 0, 0, 2 },
9250 { 3, 0, 5 },
9251 { 2, 0, 5 },
9252 { 5, 0, 1 },
9253 { 4, 0, 1 },
9254 { 3, 0, 1 },
9255 { 2, 0, 1 },
9256 { 1, 0, 1 },
9257 { 0, 0, 1 },
9258 { 1, 0, 4 },
9259 { 0, 0, 4 },
9260 { 5, 0, 0 },
9261 { 4, 0, 0 },
9262 { 3, 0, 0 },
9263 { 2, 0, 0 },
9264 { 1, 0, 0 },
9265 { 0, 0, 0 },
9266 { -1, -1, -1 },
9267 { -1, -1, -1 },
9268 { -1, -1, -1 },
9269 { -1, -1, -1 },
9270 { -1, -1, -1 },
9271 { -1, -1, -1 },
9272 { -1, -1, -1 },
9273 { -1, -1, -1 },
9274 { -1, -1, -1 },
9275 { -1, -1, -1 },
9276 { -1, -1, -1 },
9277 { -1, -1, -1 },
9278 { -1, -1, -1 },
9279 { -1, -1, -1 },
9280 { -1, -1, -1 },
9281 { -1, -1, -1 },
9282 { -1, -1, -1 },
9283 { -1, -1, -1 },
9284 { -1, -1, -1 },
9285 { -1, -1, -1 },
9286 { -1, -1, -1 },
9287 { -1, -1, -1 },
9288 { -1, -1, -1 },
9289 { -1, -1, -1 },
9290 { -1, -1, -1 },
9291 { -1, -1, -1 },
9292 { -1, -1, -1 },
9293 { -1, -1, -1 },
9294 { -1, -1, -1 },
9295 { -1, -1, -1 },
9296 { -1, -1, -1 },
9297 { -1, -1, -1 }
9300 const char tilepro_sn_direction_names[6][5] =
9302 "w",
9303 "c",
9304 "acc",
9305 "n",
9306 "e",
9310 const signed char tilepro_sn_dest_map[6][6] =
9312 { -1, 3, 4, 5, 1, 2 } /* val -> w */,
9313 { -1, 3, 4, 5, 0, 2 } /* val -> c */,
9314 { -1, 3, 4, 5, 0, 1 } /* val -> acc */,
9315 { -1, 4, 5, 0, 1, 2 } /* val -> n */,
9316 { -1, 3, 5, 0, 1, 2 } /* val -> e */,
9317 { -1, 3, 4, 0, 1, 2 } /* val -> s */
9319 #endif /* DISASM_ONLY */
9321 const struct tilepro_operand tilepro_operands[43] =
9324 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_IMM8_X0),
9325 8, 1, 0, 0, 0, 0,
9326 create_Imm8_X0, get_Imm8_X0
9329 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_IMM8_X1),
9330 8, 1, 0, 0, 0, 0,
9331 create_Imm8_X1, get_Imm8_X1
9334 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_IMM8_Y0),
9335 8, 1, 0, 0, 0, 0,
9336 create_Imm8_Y0, get_Imm8_Y0
9339 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_IMM8_Y1),
9340 8, 1, 0, 0, 0, 0,
9341 create_Imm8_Y1, get_Imm8_Y1
9344 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_IMM16_X0),
9345 16, 1, 0, 0, 0, 0,
9346 create_Imm16_X0, get_Imm16_X0
9349 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_IMM16_X1),
9350 16, 1, 0, 0, 0, 0,
9351 create_Imm16_X1, get_Imm16_X1
9354 TILEPRO_OP_TYPE_ADDRESS, BFD_RELOC(TILEPRO_JOFFLONG_X1),
9355 29, 1, 0, 0, 1, TILEPRO_LOG2_BUNDLE_ALIGNMENT_IN_BYTES,
9356 create_JOffLong_X1, get_JOffLong_X1
9359 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9360 6, 0, 0, 1, 0, 0,
9361 create_Dest_X0, get_Dest_X0
9364 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9365 6, 0, 1, 0, 0, 0,
9366 create_SrcA_X0, get_SrcA_X0
9369 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9370 6, 0, 0, 1, 0, 0,
9371 create_Dest_X1, get_Dest_X1
9374 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9375 6, 0, 1, 0, 0, 0,
9376 create_SrcA_X1, get_SrcA_X1
9379 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9380 6, 0, 0, 1, 0, 0,
9381 create_Dest_Y0, get_Dest_Y0
9384 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9385 6, 0, 1, 0, 0, 0,
9386 create_SrcA_Y0, get_SrcA_Y0
9389 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9390 6, 0, 0, 1, 0, 0,
9391 create_Dest_Y1, get_Dest_Y1
9394 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9395 6, 0, 1, 0, 0, 0,
9396 create_SrcA_Y1, get_SrcA_Y1
9399 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9400 6, 0, 1, 0, 0, 0,
9401 create_SrcA_Y2, get_SrcA_Y2
9404 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9405 6, 0, 1, 0, 0, 0,
9406 create_SrcB_X0, get_SrcB_X0
9409 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9410 6, 0, 1, 0, 0, 0,
9411 create_SrcB_X1, get_SrcB_X1
9414 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9415 6, 0, 1, 0, 0, 0,
9416 create_SrcB_Y0, get_SrcB_Y0
9419 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9420 6, 0, 1, 0, 0, 0,
9421 create_SrcB_Y1, get_SrcB_Y1
9424 TILEPRO_OP_TYPE_ADDRESS, BFD_RELOC(TILEPRO_BROFF_X1),
9425 17, 1, 0, 0, 1, TILEPRO_LOG2_BUNDLE_ALIGNMENT_IN_BYTES,
9426 create_BrOff_X1, get_BrOff_X1
9429 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9430 6, 0, 1, 1, 0, 0,
9431 create_Dest_X0, get_Dest_X0
9434 TILEPRO_OP_TYPE_ADDRESS, BFD_RELOC(NONE),
9435 28, 1, 0, 0, 1, TILEPRO_LOG2_BUNDLE_ALIGNMENT_IN_BYTES,
9436 create_JOff_X1, get_JOff_X1
9439 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9440 6, 0, 0, 1, 0, 0,
9441 create_SrcBDest_Y2, get_SrcBDest_Y2
9444 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9445 6, 0, 1, 1, 0, 0,
9446 create_SrcA_X1, get_SrcA_X1
9449 TILEPRO_OP_TYPE_SPR, BFD_RELOC(TILEPRO_MF_IMM15_X1),
9450 15, 0, 0, 0, 0, 0,
9451 create_MF_Imm15_X1, get_MF_Imm15_X1
9454 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_MMSTART_X0),
9455 5, 0, 0, 0, 0, 0,
9456 create_MMStart_X0, get_MMStart_X0
9459 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_MMEND_X0),
9460 5, 0, 0, 0, 0, 0,
9461 create_MMEnd_X0, get_MMEnd_X0
9464 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_MMSTART_X1),
9465 5, 0, 0, 0, 0, 0,
9466 create_MMStart_X1, get_MMStart_X1
9469 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_MMEND_X1),
9470 5, 0, 0, 0, 0, 0,
9471 create_MMEnd_X1, get_MMEnd_X1
9474 TILEPRO_OP_TYPE_SPR, BFD_RELOC(TILEPRO_MT_IMM15_X1),
9475 15, 0, 0, 0, 0, 0,
9476 create_MT_Imm15_X1, get_MT_Imm15_X1
9479 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9480 6, 0, 1, 1, 0, 0,
9481 create_Dest_Y0, get_Dest_Y0
9484 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_SHAMT_X0),
9485 5, 0, 0, 0, 0, 0,
9486 create_ShAmt_X0, get_ShAmt_X0
9489 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_SHAMT_X1),
9490 5, 0, 0, 0, 0, 0,
9491 create_ShAmt_X1, get_ShAmt_X1
9494 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_SHAMT_Y0),
9495 5, 0, 0, 0, 0, 0,
9496 create_ShAmt_Y0, get_ShAmt_Y0
9499 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_SHAMT_Y1),
9500 5, 0, 0, 0, 0, 0,
9501 create_ShAmt_Y1, get_ShAmt_Y1
9504 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9505 6, 0, 1, 0, 0, 0,
9506 create_SrcBDest_Y2, get_SrcBDest_Y2
9509 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(TILEPRO_DEST_IMM8_X1),
9510 8, 1, 0, 0, 0, 0,
9511 create_Dest_Imm8_X1, get_Dest_Imm8_X1
9514 TILEPRO_OP_TYPE_ADDRESS, BFD_RELOC(NONE),
9515 10, 1, 0, 0, 1, TILEPRO_LOG2_SN_INSTRUCTION_SIZE_IN_BYTES,
9516 create_BrOff_SN, get_BrOff_SN
9519 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(NONE),
9520 8, 0, 0, 0, 0, 0,
9521 create_Imm8_SN, get_Imm8_SN
9524 TILEPRO_OP_TYPE_IMMEDIATE, BFD_RELOC(NONE),
9525 8, 1, 0, 0, 0, 0,
9526 create_Imm8_SN, get_Imm8_SN
9529 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9530 2, 0, 0, 1, 0, 0,
9531 create_Dest_SN, get_Dest_SN
9534 TILEPRO_OP_TYPE_REGISTER, BFD_RELOC(NONE),
9535 2, 0, 1, 0, 0, 0,
9536 create_Src_SN, get_Src_SN
9540 #ifndef DISASM_ONLY
9541 const struct tilepro_spr tilepro_sprs[] =
9543 { 0, "MPL_ITLB_MISS_SET_0" },
9544 { 1, "MPL_ITLB_MISS_SET_1" },
9545 { 2, "MPL_ITLB_MISS_SET_2" },
9546 { 3, "MPL_ITLB_MISS_SET_3" },
9547 { 4, "MPL_ITLB_MISS" },
9548 { 256, "ITLB_CURRENT_0" },
9549 { 257, "ITLB_CURRENT_1" },
9550 { 258, "ITLB_CURRENT_2" },
9551 { 259, "ITLB_CURRENT_3" },
9552 { 260, "ITLB_INDEX" },
9553 { 261, "ITLB_MATCH_0" },
9554 { 262, "ITLB_PR" },
9555 { 263, "NUMBER_ITLB" },
9556 { 264, "REPLACEMENT_ITLB" },
9557 { 265, "WIRED_ITLB" },
9558 { 266, "ITLB_PERF" },
9559 { 512, "MPL_MEM_ERROR_SET_0" },
9560 { 513, "MPL_MEM_ERROR_SET_1" },
9561 { 514, "MPL_MEM_ERROR_SET_2" },
9562 { 515, "MPL_MEM_ERROR_SET_3" },
9563 { 516, "MPL_MEM_ERROR" },
9564 { 517, "L1_I_ERROR" },
9565 { 518, "MEM_ERROR_CBOX_ADDR" },
9566 { 519, "MEM_ERROR_CBOX_STATUS" },
9567 { 520, "MEM_ERROR_ENABLE" },
9568 { 521, "MEM_ERROR_MBOX_ADDR" },
9569 { 522, "MEM_ERROR_MBOX_STATUS" },
9570 { 523, "SNIC_ERROR_LOG_STATUS" },
9571 { 524, "SNIC_ERROR_LOG_VA" },
9572 { 525, "XDN_DEMUX_ERROR" },
9573 { 1024, "MPL_ILL_SET_0" },
9574 { 1025, "MPL_ILL_SET_1" },
9575 { 1026, "MPL_ILL_SET_2" },
9576 { 1027, "MPL_ILL_SET_3" },
9577 { 1028, "MPL_ILL" },
9578 { 1536, "MPL_GPV_SET_0" },
9579 { 1537, "MPL_GPV_SET_1" },
9580 { 1538, "MPL_GPV_SET_2" },
9581 { 1539, "MPL_GPV_SET_3" },
9582 { 1540, "MPL_GPV" },
9583 { 1541, "GPV_REASON" },
9584 { 2048, "MPL_SN_ACCESS_SET_0" },
9585 { 2049, "MPL_SN_ACCESS_SET_1" },
9586 { 2050, "MPL_SN_ACCESS_SET_2" },
9587 { 2051, "MPL_SN_ACCESS_SET_3" },
9588 { 2052, "MPL_SN_ACCESS" },
9589 { 2053, "SNCTL" },
9590 { 2054, "SNFIFO_DATA" },
9591 { 2055, "SNFIFO_SEL" },
9592 { 2056, "SNIC_INVADDR" },
9593 { 2057, "SNISTATE" },
9594 { 2058, "SNOSTATE" },
9595 { 2059, "SNPC" },
9596 { 2060, "SNSTATIC" },
9597 { 2304, "SN_DATA_AVAIL" },
9598 { 2560, "MPL_IDN_ACCESS_SET_0" },
9599 { 2561, "MPL_IDN_ACCESS_SET_1" },
9600 { 2562, "MPL_IDN_ACCESS_SET_2" },
9601 { 2563, "MPL_IDN_ACCESS_SET_3" },
9602 { 2564, "MPL_IDN_ACCESS" },
9603 { 2565, "IDN_DEMUX_CA_COUNT" },
9604 { 2566, "IDN_DEMUX_COUNT_0" },
9605 { 2567, "IDN_DEMUX_COUNT_1" },
9606 { 2568, "IDN_DEMUX_CTL" },
9607 { 2569, "IDN_DEMUX_CURR_TAG" },
9608 { 2570, "IDN_DEMUX_QUEUE_SEL" },
9609 { 2571, "IDN_DEMUX_STATUS" },
9610 { 2572, "IDN_DEMUX_WRITE_FIFO" },
9611 { 2573, "IDN_DEMUX_WRITE_QUEUE" },
9612 { 2574, "IDN_PENDING" },
9613 { 2575, "IDN_SP_FIFO_DATA" },
9614 { 2576, "IDN_SP_FIFO_SEL" },
9615 { 2577, "IDN_SP_FREEZE" },
9616 { 2578, "IDN_SP_STATE" },
9617 { 2579, "IDN_TAG_0" },
9618 { 2580, "IDN_TAG_1" },
9619 { 2581, "IDN_TAG_VALID" },
9620 { 2582, "IDN_TILE_COORD" },
9621 { 2816, "IDN_CA_DATA" },
9622 { 2817, "IDN_CA_REM" },
9623 { 2818, "IDN_CA_TAG" },
9624 { 2819, "IDN_DATA_AVAIL" },
9625 { 3072, "MPL_UDN_ACCESS_SET_0" },
9626 { 3073, "MPL_UDN_ACCESS_SET_1" },
9627 { 3074, "MPL_UDN_ACCESS_SET_2" },
9628 { 3075, "MPL_UDN_ACCESS_SET_3" },
9629 { 3076, "MPL_UDN_ACCESS" },
9630 { 3077, "UDN_DEMUX_CA_COUNT" },
9631 { 3078, "UDN_DEMUX_COUNT_0" },
9632 { 3079, "UDN_DEMUX_COUNT_1" },
9633 { 3080, "UDN_DEMUX_COUNT_2" },
9634 { 3081, "UDN_DEMUX_COUNT_3" },
9635 { 3082, "UDN_DEMUX_CTL" },
9636 { 3083, "UDN_DEMUX_CURR_TAG" },
9637 { 3084, "UDN_DEMUX_QUEUE_SEL" },
9638 { 3085, "UDN_DEMUX_STATUS" },
9639 { 3086, "UDN_DEMUX_WRITE_FIFO" },
9640 { 3087, "UDN_DEMUX_WRITE_QUEUE" },
9641 { 3088, "UDN_PENDING" },
9642 { 3089, "UDN_SP_FIFO_DATA" },
9643 { 3090, "UDN_SP_FIFO_SEL" },
9644 { 3091, "UDN_SP_FREEZE" },
9645 { 3092, "UDN_SP_STATE" },
9646 { 3093, "UDN_TAG_0" },
9647 { 3094, "UDN_TAG_1" },
9648 { 3095, "UDN_TAG_2" },
9649 { 3096, "UDN_TAG_3" },
9650 { 3097, "UDN_TAG_VALID" },
9651 { 3098, "UDN_TILE_COORD" },
9652 { 3328, "UDN_CA_DATA" },
9653 { 3329, "UDN_CA_REM" },
9654 { 3330, "UDN_CA_TAG" },
9655 { 3331, "UDN_DATA_AVAIL" },
9656 { 3584, "MPL_IDN_REFILL_SET_0" },
9657 { 3585, "MPL_IDN_REFILL_SET_1" },
9658 { 3586, "MPL_IDN_REFILL_SET_2" },
9659 { 3587, "MPL_IDN_REFILL_SET_3" },
9660 { 3588, "MPL_IDN_REFILL" },
9661 { 3589, "IDN_REFILL_EN" },
9662 { 4096, "MPL_UDN_REFILL_SET_0" },
9663 { 4097, "MPL_UDN_REFILL_SET_1" },
9664 { 4098, "MPL_UDN_REFILL_SET_2" },
9665 { 4099, "MPL_UDN_REFILL_SET_3" },
9666 { 4100, "MPL_UDN_REFILL" },
9667 { 4101, "UDN_REFILL_EN" },
9668 { 4608, "MPL_IDN_COMPLETE_SET_0" },
9669 { 4609, "MPL_IDN_COMPLETE_SET_1" },
9670 { 4610, "MPL_IDN_COMPLETE_SET_2" },
9671 { 4611, "MPL_IDN_COMPLETE_SET_3" },
9672 { 4612, "MPL_IDN_COMPLETE" },
9673 { 4613, "IDN_REMAINING" },
9674 { 5120, "MPL_UDN_COMPLETE_SET_0" },
9675 { 5121, "MPL_UDN_COMPLETE_SET_1" },
9676 { 5122, "MPL_UDN_COMPLETE_SET_2" },
9677 { 5123, "MPL_UDN_COMPLETE_SET_3" },
9678 { 5124, "MPL_UDN_COMPLETE" },
9679 { 5125, "UDN_REMAINING" },
9680 { 5632, "MPL_SWINT_3_SET_0" },
9681 { 5633, "MPL_SWINT_3_SET_1" },
9682 { 5634, "MPL_SWINT_3_SET_2" },
9683 { 5635, "MPL_SWINT_3_SET_3" },
9684 { 5636, "MPL_SWINT_3" },
9685 { 6144, "MPL_SWINT_2_SET_0" },
9686 { 6145, "MPL_SWINT_2_SET_1" },
9687 { 6146, "MPL_SWINT_2_SET_2" },
9688 { 6147, "MPL_SWINT_2_SET_3" },
9689 { 6148, "MPL_SWINT_2" },
9690 { 6656, "MPL_SWINT_1_SET_0" },
9691 { 6657, "MPL_SWINT_1_SET_1" },
9692 { 6658, "MPL_SWINT_1_SET_2" },
9693 { 6659, "MPL_SWINT_1_SET_3" },
9694 { 6660, "MPL_SWINT_1" },
9695 { 7168, "MPL_SWINT_0_SET_0" },
9696 { 7169, "MPL_SWINT_0_SET_1" },
9697 { 7170, "MPL_SWINT_0_SET_2" },
9698 { 7171, "MPL_SWINT_0_SET_3" },
9699 { 7172, "MPL_SWINT_0" },
9700 { 7680, "MPL_UNALIGN_DATA_SET_0" },
9701 { 7681, "MPL_UNALIGN_DATA_SET_1" },
9702 { 7682, "MPL_UNALIGN_DATA_SET_2" },
9703 { 7683, "MPL_UNALIGN_DATA_SET_3" },
9704 { 7684, "MPL_UNALIGN_DATA" },
9705 { 8192, "MPL_DTLB_MISS_SET_0" },
9706 { 8193, "MPL_DTLB_MISS_SET_1" },
9707 { 8194, "MPL_DTLB_MISS_SET_2" },
9708 { 8195, "MPL_DTLB_MISS_SET_3" },
9709 { 8196, "MPL_DTLB_MISS" },
9710 { 8448, "AER_0" },
9711 { 8449, "AER_1" },
9712 { 8450, "DTLB_BAD_ADDR" },
9713 { 8451, "DTLB_BAD_ADDR_REASON" },
9714 { 8452, "DTLB_CURRENT_0" },
9715 { 8453, "DTLB_CURRENT_1" },
9716 { 8454, "DTLB_CURRENT_2" },
9717 { 8455, "DTLB_CURRENT_3" },
9718 { 8456, "DTLB_INDEX" },
9719 { 8457, "DTLB_MATCH_0" },
9720 { 8458, "NUMBER_DTLB" },
9721 { 8459, "PHYSICAL_MEMORY_MODE" },
9722 { 8460, "REPLACEMENT_DTLB" },
9723 { 8461, "WIRED_DTLB" },
9724 { 8462, "CACHE_RED_WAY_OVERRIDDEN" },
9725 { 8463, "DTLB_PERF" },
9726 { 8704, "MPL_DTLB_ACCESS_SET_0" },
9727 { 8705, "MPL_DTLB_ACCESS_SET_1" },
9728 { 8706, "MPL_DTLB_ACCESS_SET_2" },
9729 { 8707, "MPL_DTLB_ACCESS_SET_3" },
9730 { 8708, "MPL_DTLB_ACCESS" },
9731 { 9216, "MPL_DMATLB_MISS_SET_0" },
9732 { 9217, "MPL_DMATLB_MISS_SET_1" },
9733 { 9218, "MPL_DMATLB_MISS_SET_2" },
9734 { 9219, "MPL_DMATLB_MISS_SET_3" },
9735 { 9220, "MPL_DMATLB_MISS" },
9736 { 9472, "DMA_BAD_ADDR" },
9737 { 9473, "DMA_STATUS" },
9738 { 9728, "MPL_DMATLB_ACCESS_SET_0" },
9739 { 9729, "MPL_DMATLB_ACCESS_SET_1" },
9740 { 9730, "MPL_DMATLB_ACCESS_SET_2" },
9741 { 9731, "MPL_DMATLB_ACCESS_SET_3" },
9742 { 9732, "MPL_DMATLB_ACCESS" },
9743 { 10240, "MPL_SNITLB_MISS_SET_0" },
9744 { 10241, "MPL_SNITLB_MISS_SET_1" },
9745 { 10242, "MPL_SNITLB_MISS_SET_2" },
9746 { 10243, "MPL_SNITLB_MISS_SET_3" },
9747 { 10244, "MPL_SNITLB_MISS" },
9748 { 10245, "NUMBER_SNITLB" },
9749 { 10246, "REPLACEMENT_SNITLB" },
9750 { 10247, "SNITLB_CURRENT_0" },
9751 { 10248, "SNITLB_CURRENT_1" },
9752 { 10249, "SNITLB_CURRENT_2" },
9753 { 10250, "SNITLB_CURRENT_3" },
9754 { 10251, "SNITLB_INDEX" },
9755 { 10252, "SNITLB_MATCH_0" },
9756 { 10253, "SNITLB_PR" },
9757 { 10254, "WIRED_SNITLB" },
9758 { 10255, "SNITLB_STATUS" },
9759 { 10752, "MPL_SN_NOTIFY_SET_0" },
9760 { 10753, "MPL_SN_NOTIFY_SET_1" },
9761 { 10754, "MPL_SN_NOTIFY_SET_2" },
9762 { 10755, "MPL_SN_NOTIFY_SET_3" },
9763 { 10756, "MPL_SN_NOTIFY" },
9764 { 10757, "SN_NOTIFY_STATUS" },
9765 { 11264, "MPL_SN_FIREWALL_SET_0" },
9766 { 11265, "MPL_SN_FIREWALL_SET_1" },
9767 { 11266, "MPL_SN_FIREWALL_SET_2" },
9768 { 11267, "MPL_SN_FIREWALL_SET_3" },
9769 { 11268, "MPL_SN_FIREWALL" },
9770 { 11269, "SN_DIRECTION_PROTECT" },
9771 { 11776, "MPL_IDN_FIREWALL_SET_0" },
9772 { 11777, "MPL_IDN_FIREWALL_SET_1" },
9773 { 11778, "MPL_IDN_FIREWALL_SET_2" },
9774 { 11779, "MPL_IDN_FIREWALL_SET_3" },
9775 { 11780, "MPL_IDN_FIREWALL" },
9776 { 11781, "IDN_DIRECTION_PROTECT" },
9777 { 12288, "MPL_UDN_FIREWALL_SET_0" },
9778 { 12289, "MPL_UDN_FIREWALL_SET_1" },
9779 { 12290, "MPL_UDN_FIREWALL_SET_2" },
9780 { 12291, "MPL_UDN_FIREWALL_SET_3" },
9781 { 12292, "MPL_UDN_FIREWALL" },
9782 { 12293, "UDN_DIRECTION_PROTECT" },
9783 { 12800, "MPL_TILE_TIMER_SET_0" },
9784 { 12801, "MPL_TILE_TIMER_SET_1" },
9785 { 12802, "MPL_TILE_TIMER_SET_2" },
9786 { 12803, "MPL_TILE_TIMER_SET_3" },
9787 { 12804, "MPL_TILE_TIMER" },
9788 { 12805, "TILE_TIMER_CONTROL" },
9789 { 13312, "MPL_IDN_TIMER_SET_0" },
9790 { 13313, "MPL_IDN_TIMER_SET_1" },
9791 { 13314, "MPL_IDN_TIMER_SET_2" },
9792 { 13315, "MPL_IDN_TIMER_SET_3" },
9793 { 13316, "MPL_IDN_TIMER" },
9794 { 13317, "IDN_DEADLOCK_COUNT" },
9795 { 13318, "IDN_DEADLOCK_TIMEOUT" },
9796 { 13824, "MPL_UDN_TIMER_SET_0" },
9797 { 13825, "MPL_UDN_TIMER_SET_1" },
9798 { 13826, "MPL_UDN_TIMER_SET_2" },
9799 { 13827, "MPL_UDN_TIMER_SET_3" },
9800 { 13828, "MPL_UDN_TIMER" },
9801 { 13829, "UDN_DEADLOCK_COUNT" },
9802 { 13830, "UDN_DEADLOCK_TIMEOUT" },
9803 { 14336, "MPL_DMA_NOTIFY_SET_0" },
9804 { 14337, "MPL_DMA_NOTIFY_SET_1" },
9805 { 14338, "MPL_DMA_NOTIFY_SET_2" },
9806 { 14339, "MPL_DMA_NOTIFY_SET_3" },
9807 { 14340, "MPL_DMA_NOTIFY" },
9808 { 14592, "DMA_BYTE" },
9809 { 14593, "DMA_CHUNK_SIZE" },
9810 { 14594, "DMA_CTR" },
9811 { 14595, "DMA_DST_ADDR" },
9812 { 14596, "DMA_DST_CHUNK_ADDR" },
9813 { 14597, "DMA_SRC_ADDR" },
9814 { 14598, "DMA_SRC_CHUNK_ADDR" },
9815 { 14599, "DMA_STRIDE" },
9816 { 14600, "DMA_USER_STATUS" },
9817 { 14848, "MPL_IDN_CA_SET_0" },
9818 { 14849, "MPL_IDN_CA_SET_1" },
9819 { 14850, "MPL_IDN_CA_SET_2" },
9820 { 14851, "MPL_IDN_CA_SET_3" },
9821 { 14852, "MPL_IDN_CA" },
9822 { 15360, "MPL_UDN_CA_SET_0" },
9823 { 15361, "MPL_UDN_CA_SET_1" },
9824 { 15362, "MPL_UDN_CA_SET_2" },
9825 { 15363, "MPL_UDN_CA_SET_3" },
9826 { 15364, "MPL_UDN_CA" },
9827 { 15872, "MPL_IDN_AVAIL_SET_0" },
9828 { 15873, "MPL_IDN_AVAIL_SET_1" },
9829 { 15874, "MPL_IDN_AVAIL_SET_2" },
9830 { 15875, "MPL_IDN_AVAIL_SET_3" },
9831 { 15876, "MPL_IDN_AVAIL" },
9832 { 15877, "IDN_AVAIL_EN" },
9833 { 16384, "MPL_UDN_AVAIL_SET_0" },
9834 { 16385, "MPL_UDN_AVAIL_SET_1" },
9835 { 16386, "MPL_UDN_AVAIL_SET_2" },
9836 { 16387, "MPL_UDN_AVAIL_SET_3" },
9837 { 16388, "MPL_UDN_AVAIL" },
9838 { 16389, "UDN_AVAIL_EN" },
9839 { 16896, "MPL_PERF_COUNT_SET_0" },
9840 { 16897, "MPL_PERF_COUNT_SET_1" },
9841 { 16898, "MPL_PERF_COUNT_SET_2" },
9842 { 16899, "MPL_PERF_COUNT_SET_3" },
9843 { 16900, "MPL_PERF_COUNT" },
9844 { 16901, "PERF_COUNT_0" },
9845 { 16902, "PERF_COUNT_1" },
9846 { 16903, "PERF_COUNT_CTL" },
9847 { 16904, "PERF_COUNT_STS" },
9848 { 16905, "WATCH_CTL" },
9849 { 16906, "WATCH_MASK" },
9850 { 16907, "WATCH_VAL" },
9851 { 16912, "PERF_COUNT_DN_CTL" },
9852 { 17408, "MPL_INTCTRL_3_SET_0" },
9853 { 17409, "MPL_INTCTRL_3_SET_1" },
9854 { 17410, "MPL_INTCTRL_3_SET_2" },
9855 { 17411, "MPL_INTCTRL_3_SET_3" },
9856 { 17412, "MPL_INTCTRL_3" },
9857 { 17413, "EX_CONTEXT_3_0" },
9858 { 17414, "EX_CONTEXT_3_1" },
9859 { 17415, "INTERRUPT_MASK_3_0" },
9860 { 17416, "INTERRUPT_MASK_3_1" },
9861 { 17417, "INTERRUPT_MASK_RESET_3_0" },
9862 { 17418, "INTERRUPT_MASK_RESET_3_1" },
9863 { 17419, "INTERRUPT_MASK_SET_3_0" },
9864 { 17420, "INTERRUPT_MASK_SET_3_1" },
9865 { 17432, "INTCTRL_3_STATUS" },
9866 { 17664, "SYSTEM_SAVE_3_0" },
9867 { 17665, "SYSTEM_SAVE_3_1" },
9868 { 17666, "SYSTEM_SAVE_3_2" },
9869 { 17667, "SYSTEM_SAVE_3_3" },
9870 { 17920, "MPL_INTCTRL_2_SET_0" },
9871 { 17921, "MPL_INTCTRL_2_SET_1" },
9872 { 17922, "MPL_INTCTRL_2_SET_2" },
9873 { 17923, "MPL_INTCTRL_2_SET_3" },
9874 { 17924, "MPL_INTCTRL_2" },
9875 { 17925, "EX_CONTEXT_2_0" },
9876 { 17926, "EX_CONTEXT_2_1" },
9877 { 17927, "INTCTRL_2_STATUS" },
9878 { 17928, "INTERRUPT_MASK_2_0" },
9879 { 17929, "INTERRUPT_MASK_2_1" },
9880 { 17930, "INTERRUPT_MASK_RESET_2_0" },
9881 { 17931, "INTERRUPT_MASK_RESET_2_1" },
9882 { 17932, "INTERRUPT_MASK_SET_2_0" },
9883 { 17933, "INTERRUPT_MASK_SET_2_1" },
9884 { 18176, "SYSTEM_SAVE_2_0" },
9885 { 18177, "SYSTEM_SAVE_2_1" },
9886 { 18178, "SYSTEM_SAVE_2_2" },
9887 { 18179, "SYSTEM_SAVE_2_3" },
9888 { 18432, "MPL_INTCTRL_1_SET_0" },
9889 { 18433, "MPL_INTCTRL_1_SET_1" },
9890 { 18434, "MPL_INTCTRL_1_SET_2" },
9891 { 18435, "MPL_INTCTRL_1_SET_3" },
9892 { 18436, "MPL_INTCTRL_1" },
9893 { 18437, "EX_CONTEXT_1_0" },
9894 { 18438, "EX_CONTEXT_1_1" },
9895 { 18439, "INTCTRL_1_STATUS" },
9896 { 18440, "INTCTRL_3_STATUS_REV0" },
9897 { 18441, "INTERRUPT_MASK_1_0" },
9898 { 18442, "INTERRUPT_MASK_1_1" },
9899 { 18443, "INTERRUPT_MASK_RESET_1_0" },
9900 { 18444, "INTERRUPT_MASK_RESET_1_1" },
9901 { 18445, "INTERRUPT_MASK_SET_1_0" },
9902 { 18446, "INTERRUPT_MASK_SET_1_1" },
9903 { 18688, "SYSTEM_SAVE_1_0" },
9904 { 18689, "SYSTEM_SAVE_1_1" },
9905 { 18690, "SYSTEM_SAVE_1_2" },
9906 { 18691, "SYSTEM_SAVE_1_3" },
9907 { 18944, "MPL_INTCTRL_0_SET_0" },
9908 { 18945, "MPL_INTCTRL_0_SET_1" },
9909 { 18946, "MPL_INTCTRL_0_SET_2" },
9910 { 18947, "MPL_INTCTRL_0_SET_3" },
9911 { 18948, "MPL_INTCTRL_0" },
9912 { 18949, "EX_CONTEXT_0_0" },
9913 { 18950, "EX_CONTEXT_0_1" },
9914 { 18951, "INTCTRL_0_STATUS" },
9915 { 18952, "INTERRUPT_MASK_0_0" },
9916 { 18953, "INTERRUPT_MASK_0_1" },
9917 { 18954, "INTERRUPT_MASK_RESET_0_0" },
9918 { 18955, "INTERRUPT_MASK_RESET_0_1" },
9919 { 18956, "INTERRUPT_MASK_SET_0_0" },
9920 { 18957, "INTERRUPT_MASK_SET_0_1" },
9921 { 19200, "SYSTEM_SAVE_0_0" },
9922 { 19201, "SYSTEM_SAVE_0_1" },
9923 { 19202, "SYSTEM_SAVE_0_2" },
9924 { 19203, "SYSTEM_SAVE_0_3" },
9925 { 19456, "MPL_BOOT_ACCESS_SET_0" },
9926 { 19457, "MPL_BOOT_ACCESS_SET_1" },
9927 { 19458, "MPL_BOOT_ACCESS_SET_2" },
9928 { 19459, "MPL_BOOT_ACCESS_SET_3" },
9929 { 19460, "MPL_BOOT_ACCESS" },
9930 { 19461, "CBOX_CACHEASRAM_CONFIG" },
9931 { 19462, "CBOX_CACHE_CONFIG" },
9932 { 19463, "CBOX_MMAP_0" },
9933 { 19464, "CBOX_MMAP_1" },
9934 { 19465, "CBOX_MMAP_2" },
9935 { 19466, "CBOX_MMAP_3" },
9936 { 19467, "CBOX_MSR" },
9937 { 19468, "CBOX_SRC_ID" },
9938 { 19469, "CYCLE_HIGH_MODIFY" },
9939 { 19470, "CYCLE_LOW_MODIFY" },
9940 { 19471, "DIAG_BCST_CTL" },
9941 { 19472, "DIAG_BCST_MASK" },
9942 { 19473, "DIAG_BCST_TRIGGER" },
9943 { 19474, "DIAG_MUX_CTL" },
9944 { 19475, "DIAG_TRACE_CTL" },
9945 { 19476, "DIAG_TRACE_STS" },
9946 { 19477, "IDN_DEMUX_BUF_THRESH" },
9947 { 19478, "SBOX_CONFIG" },
9948 { 19479, "TILE_COORD" },
9949 { 19480, "UDN_DEMUX_BUF_THRESH" },
9950 { 19481, "CBOX_HOME_MAP_ADDR" },
9951 { 19482, "CBOX_HOME_MAP_DATA" },
9952 { 19483, "CBOX_MSR1" },
9953 { 19484, "BIG_ENDIAN_CONFIG" },
9954 { 19485, "MEM_STRIPE_CONFIG" },
9955 { 19486, "DIAG_TRACE_WAY" },
9956 { 19487, "VDN_SNOOP_SHIM_CTL" },
9957 { 19488, "PERF_COUNT_PLS" },
9958 { 19489, "DIAG_TRACE_DATA" },
9959 { 19712, "I_AER_0" },
9960 { 19713, "I_AER_1" },
9961 { 19714, "I_PHYSICAL_MEMORY_MODE" },
9962 { 19968, "MPL_WORLD_ACCESS_SET_0" },
9963 { 19969, "MPL_WORLD_ACCESS_SET_1" },
9964 { 19970, "MPL_WORLD_ACCESS_SET_2" },
9965 { 19971, "MPL_WORLD_ACCESS_SET_3" },
9966 { 19972, "MPL_WORLD_ACCESS" },
9967 { 19973, "SIM_SOCKET" },
9968 { 19974, "CYCLE_HIGH" },
9969 { 19975, "CYCLE_LOW" },
9970 { 19976, "DONE" },
9971 { 19977, "FAIL" },
9972 { 19978, "INTERRUPT_CRITICAL_SECTION" },
9973 { 19979, "PASS" },
9974 { 19980, "SIM_CONTROL" },
9975 { 19981, "EVENT_BEGIN" },
9976 { 19982, "EVENT_END" },
9977 { 19983, "TILE_WRITE_PENDING" },
9978 { 19984, "TILE_RTF_HWM" },
9979 { 20224, "PROC_STATUS" },
9980 { 20225, "STATUS_SATURATE" },
9981 { 20480, "MPL_I_ASID_SET_0" },
9982 { 20481, "MPL_I_ASID_SET_1" },
9983 { 20482, "MPL_I_ASID_SET_2" },
9984 { 20483, "MPL_I_ASID_SET_3" },
9985 { 20484, "MPL_I_ASID" },
9986 { 20485, "I_ASID" },
9987 { 20992, "MPL_D_ASID_SET_0" },
9988 { 20993, "MPL_D_ASID_SET_1" },
9989 { 20994, "MPL_D_ASID_SET_2" },
9990 { 20995, "MPL_D_ASID_SET_3" },
9991 { 20996, "MPL_D_ASID" },
9992 { 20997, "D_ASID" },
9993 { 21504, "MPL_DMA_ASID_SET_0" },
9994 { 21505, "MPL_DMA_ASID_SET_1" },
9995 { 21506, "MPL_DMA_ASID_SET_2" },
9996 { 21507, "MPL_DMA_ASID_SET_3" },
9997 { 21508, "MPL_DMA_ASID" },
9998 { 21509, "DMA_ASID" },
9999 { 22016, "MPL_SNI_ASID_SET_0" },
10000 { 22017, "MPL_SNI_ASID_SET_1" },
10001 { 22018, "MPL_SNI_ASID_SET_2" },
10002 { 22019, "MPL_SNI_ASID_SET_3" },
10003 { 22020, "MPL_SNI_ASID" },
10004 { 22021, "SNI_ASID" },
10005 { 22528, "MPL_DMA_CPL_SET_0" },
10006 { 22529, "MPL_DMA_CPL_SET_1" },
10007 { 22530, "MPL_DMA_CPL_SET_2" },
10008 { 22531, "MPL_DMA_CPL_SET_3" },
10009 { 22532, "MPL_DMA_CPL" },
10010 { 23040, "MPL_SN_CPL_SET_0" },
10011 { 23041, "MPL_SN_CPL_SET_1" },
10012 { 23042, "MPL_SN_CPL_SET_2" },
10013 { 23043, "MPL_SN_CPL_SET_3" },
10014 { 23044, "MPL_SN_CPL" },
10015 { 23552, "MPL_DOUBLE_FAULT_SET_0" },
10016 { 23553, "MPL_DOUBLE_FAULT_SET_1" },
10017 { 23554, "MPL_DOUBLE_FAULT_SET_2" },
10018 { 23555, "MPL_DOUBLE_FAULT_SET_3" },
10019 { 23556, "MPL_DOUBLE_FAULT" },
10020 { 23557, "LAST_INTERRUPT_REASON" },
10021 { 24064, "MPL_SN_STATIC_ACCESS_SET_0" },
10022 { 24065, "MPL_SN_STATIC_ACCESS_SET_1" },
10023 { 24066, "MPL_SN_STATIC_ACCESS_SET_2" },
10024 { 24067, "MPL_SN_STATIC_ACCESS_SET_3" },
10025 { 24068, "MPL_SN_STATIC_ACCESS" },
10026 { 24069, "SN_STATIC_CTL" },
10027 { 24070, "SN_STATIC_FIFO_DATA" },
10028 { 24071, "SN_STATIC_FIFO_SEL" },
10029 { 24073, "SN_STATIC_ISTATE" },
10030 { 24074, "SN_STATIC_OSTATE" },
10031 { 24076, "SN_STATIC_STATIC" },
10032 { 24320, "SN_STATIC_DATA_AVAIL" },
10033 { 24576, "MPL_AUX_PERF_COUNT_SET_0" },
10034 { 24577, "MPL_AUX_PERF_COUNT_SET_1" },
10035 { 24578, "MPL_AUX_PERF_COUNT_SET_2" },
10036 { 24579, "MPL_AUX_PERF_COUNT_SET_3" },
10037 { 24580, "MPL_AUX_PERF_COUNT" },
10038 { 24581, "AUX_PERF_COUNT_0" },
10039 { 24582, "AUX_PERF_COUNT_1" },
10040 { 24583, "AUX_PERF_COUNT_CTL" },
10041 { 24584, "AUX_PERF_COUNT_STS" },
10044 const int tilepro_num_sprs = 499;
10046 #endif /* DISASM_ONLY */
10048 #ifndef DISASM_ONLY
10050 #include <stdlib.h>
10052 static int
10053 tilepro_spr_compare (const void *a_ptr, const void *b_ptr)
10055 const struct tilepro_spr *a = (const struct tilepro_spr *) a_ptr;
10056 const struct tilepro_spr *b = (const struct tilepro_spr *) b_ptr;
10058 return a->number - b->number;
10061 const char *
10062 get_tilepro_spr_name (int num)
10064 void *result;
10065 struct tilepro_spr key;
10067 key.number = num;
10068 result = bsearch ((const void *) &key, (const void *) tilepro_sprs,
10069 tilepro_num_sprs, sizeof (struct tilepro_spr),
10070 tilepro_spr_compare);
10072 if (result == NULL)
10073 return NULL;
10076 struct tilepro_spr *result_ptr = (struct tilepro_spr *) result;
10078 return result_ptr->name;
10083 /* Canonical name of each register. */
10084 const char * const tilepro_register_names[] =
10086 "r0", "r1", "r2", "r3", "r4", "r5", "r6", "r7",
10087 "r8", "r9", "r10", "r11", "r12", "r13", "r14", "r15",
10088 "r16", "r17", "r18", "r19", "r20", "r21", "r22", "r23",
10089 "r24", "r25", "r26", "r27", "r28", "r29", "r30", "r31",
10090 "r32", "r33", "r34", "r35", "r36", "r37", "r38", "r39",
10091 "r40", "r41", "r42", "r43", "r44", "r45", "r46", "r47",
10092 "r48", "r49", "r50", "r51", "r52", "tp", "sp", "lr",
10093 "sn", "idn0", "idn1", "udn0", "udn1", "udn2", "udn3", "zero"
10096 #endif /* not DISASM_ONLY */
10099 /* Given a set of bundle bits and a specific pipe, returns which
10100 instruction the bundle contains in that pipe. */
10102 const struct tilepro_opcode *
10103 find_opcode (tilepro_bundle_bits bits, tilepro_pipeline pipe)
10105 const unsigned short *table = tilepro_bundle_decoder_fsms[pipe];
10106 int i = 0;
10108 while (1)
10110 unsigned short bitspec = table[i];
10111 unsigned int bitfield =
10112 ((unsigned int) (bits >> (bitspec & 63))) & (bitspec >> 6);
10113 unsigned short next = table[i + 1 + bitfield];
10115 if (next <= TILEPRO_OPC_NONE)
10116 return &tilepro_opcodes[next];
10118 i = next - TILEPRO_OPC_NONE;
10124 parse_insn_tilepro (tilepro_bundle_bits bits,
10125 unsigned int pc,
10126 struct tilepro_decoded_instruction
10127 decoded[TILEPRO_MAX_INSTRUCTIONS_PER_BUNDLE])
10129 int num_instructions = 0;
10130 int pipe;
10131 int min_pipe, max_pipe;
10133 if ((bits & TILEPRO_BUNDLE_Y_ENCODING_MASK) == 0)
10135 min_pipe = TILEPRO_PIPELINE_X0;
10136 max_pipe = TILEPRO_PIPELINE_X1;
10138 else
10140 min_pipe = TILEPRO_PIPELINE_Y0;
10141 max_pipe = TILEPRO_PIPELINE_Y2;
10144 /* For each pipe, find an instruction that fits. */
10145 for (pipe = min_pipe; pipe <= max_pipe; pipe++)
10147 const struct tilepro_opcode *opc;
10148 struct tilepro_decoded_instruction *d;
10149 int i;
10151 d = &decoded[num_instructions++];
10152 opc = find_opcode (bits, (tilepro_pipeline)pipe);
10153 d->opcode = opc;
10155 /* Decode each operand, sign extending, etc. as appropriate. */
10156 for (i = 0; i < opc->num_operands; i++)
10158 const struct tilepro_operand *op =
10159 &tilepro_operands[opc->operands[pipe][i]];
10160 int opval = op->extract (bits);
10162 if (op->is_signed)
10164 /* Sign-extend the operand. */
10165 int shift = (int)((sizeof(int) * 8) - op->num_bits);
10166 opval = (opval << shift) >> shift;
10169 /* Adjust PC-relative scaled branch offsets. */
10170 if (op->type == TILEPRO_OP_TYPE_ADDRESS)
10172 opval *= TILEPRO_BUNDLE_SIZE_IN_BYTES;
10173 opval += (int)pc;
10176 /* Record the final value. */
10177 d->operands[i] = op;
10178 d->operand_values[i] = opval;
10182 return num_instructions;