1 #line 1 "rx-decode.opc"
3 /* Copyright (C) 2012-2014 Free Software Foundation, Inc.
4 Contributed by Red Hat.
7 This file is part of the GNU opcodes library.
9 This library is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 3, or (at your option)
14 It is distributed in the hope that it will be useful, but WITHOUT
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
16 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
17 License for more details.
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
22 MA 02110-1301, USA. */
29 #include "opcode/rx.h"
31 #define RX_OPCODE_BIG_ENDIAN 0
35 RX_Opcode_Decoded * rx;
36 int (* getbyte)(void *);
47 /* These are for when the upper bits are "don't care" or "undefined". */
53 0 /* Bogus instructions can have a size field set to 3. */
61 0 /* Bogus instructions can have a size field set to 3. */
69 0 /* Bogus instructions can have a size field set to 3. */
80 #define ID(x) rx->id = RXO_##x
81 #define OP(n,t,r,a) (rx->op[n].type = t, \
83 rx->op[n].addend = a )
84 #define OPs(n,t,r,a,s) (OP (n,t,r,a), \
87 /* This is for the BWL and BW bitfields. */
88 static int SCALE[] = { 1, 2, 4, 0 };
89 /* This is for the prefix size enum. */
90 static int PSCALE[] = { 4, 1, 1, 1, 2, 2, 2, 3, 4 };
92 static int flagmap[] = {0, 1, 2, 3, 0, 0, 0, 0,
93 16, 17, 0, 0, 0, 0, 0, 0 };
95 static int dsp3map[] = { 8, 9, 10, 3, 4, 5, 6, 7 };
98 *C a constant (immediate) c
100 *I Register indirect, no offset
101 *Is Register indirect, with offset
102 *D standard displacement: type (r,[r],dsp8,dsp16 code), register, BWL code
103 *P standard displacement: type (r,[r]), reg, assumes UByte
104 *Pm memex displacement: type (r,[r]), reg, memex code
105 *cc condition code. */
107 #define DC(c) OP (0, RX_Operand_Immediate, 0, c)
108 #define DR(r) OP (0, RX_Operand_Register, r, 0)
109 #define DI(r,a) OP (0, RX_Operand_Indirect, r, a)
110 #define DIs(r,a,s) OP (0, RX_Operand_Indirect, r, (a) * SCALE[s])
111 #define DD(t,r,s) rx_disp (0, t, r, bwl[s], ld);
112 #define DF(r) OP (0, RX_Operand_Flag, flagmap[r], 0)
114 #define SC(i) OP (1, RX_Operand_Immediate, 0, i)
115 #define SR(r) OP (1, RX_Operand_Register, r, 0)
116 #define SRR(r) OP (1, RX_Operand_TwoReg, r, 0)
117 #define SI(r,a) OP (1, RX_Operand_Indirect, r, a)
118 #define SIs(r,a,s) OP (1, RX_Operand_Indirect, r, (a) * SCALE[s])
119 #define SD(t,r,s) rx_disp (1, t, r, bwl[s], ld);
120 #define SP(t,r) rx_disp (1, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 1);
121 #define SPm(t,r,m) rx_disp (1, t, r, memex[m], ld); rx->op[1].size = memex[m];
122 #define Scc(cc) OP (1, RX_Operand_Condition, cc, 0)
124 #define S2C(i) OP (2, RX_Operand_Immediate, 0, i)
125 #define S2R(r) OP (2, RX_Operand_Register, r, 0)
126 #define S2I(r,a) OP (2, RX_Operand_Indirect, r, a)
127 #define S2Is(r,a,s) OP (2, RX_Operand_Indirect, r, (a) * SCALE[s])
128 #define S2D(t,r,s) rx_disp (2, t, r, bwl[s], ld);
129 #define S2P(t,r) rx_disp (2, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 2);
130 #define S2Pm(t,r,m) rx_disp (2, t, r, memex[m], ld); rx->op[2].size = memex[m];
131 #define S2cc(cc) OP (2, RX_Operand_Condition, cc, 0)
133 #define BWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = bwl[sz]
134 #define sBWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = sbwl[sz]
135 #define uBWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = ubwl[sz]
136 #define P(t, n) rx->op[n].size = (t!=3) ? RX_UByte : RX_Long;
138 #define F(f) store_flags(rx, f)
140 #define AU ATTRIBUTE_UNUSED
141 #define GETBYTE() (ld->op [ld->rx->n_bytes++] = ld->getbyte (ld->ptr))
143 #define SYNTAX(x) rx->syntax = x
145 #define UNSUPPORTED() \
146 rx->syntax = "*unknown*"
148 #define IMM(sf) immediate (sf, 0, ld)
149 #define IMMex(sf) immediate (sf, 1, ld)
152 immediate (int sfield, int ex, LocalData * ld)
154 unsigned long i = 0, j;
158 #define B ((unsigned long) GETBYTE())
160 #if RX_OPCODE_BIG_ENDIAN
162 if (ex && (i & 0x80))
173 if (ex && (j & 0x80))
179 #if RX_OPCODE_BIG_ENDIAN
188 if (ex && (i & 0x800000))
192 #if RX_OPCODE_BIG_ENDIAN
199 if (ex && (i & 0x8000))
204 if (ex && (i & 0x80))
214 rx_disp (int n, int type, int reg, int size, LocalData * ld)
218 ld->rx->op[n].reg = reg;
222 ld->rx->op[n].type = RX_Operand_Register;
225 ld->rx->op[n].type = RX_Operand_Indirect;
226 ld->rx->op[n].addend = 0;
229 ld->rx->op[n].type = RX_Operand_Indirect;
231 ld->rx->op[n].addend = disp * PSCALE[size];
234 ld->rx->op[n].type = RX_Operand_Indirect;
236 #if RX_OPCODE_BIG_ENDIAN
237 disp = disp * 256 + GETBYTE ();
239 disp = disp + GETBYTE () * 256;
241 ld->rx->op[n].addend = disp * PSCALE[size];
254 #define F___ZC rx->flags_0 = rx->flags_s = xZ|xC;
255 #define F__SZ_ rx->flags_0 = rx->flags_s = xS|xZ;
256 #define F__SZC rx->flags_0 = rx->flags_s = xS|xZ|xC;
257 #define F_0SZC rx->flags_0 = xO|xS|xZ|xC; rx->flags_s = xS|xZ|xC;
258 #define F_O___ rx->flags_0 = rx->flags_s = xO;
259 #define F_OS__ rx->flags_0 = rx->flags_s = xO|xS;
260 #define F_OSZ_ rx->flags_0 = rx->flags_s = xO|xS|xZ;
261 #define F_OSZC rx->flags_0 = rx->flags_s = xO|xS|xZ|xC;
264 rx_decode_opcode (unsigned long pc AU,
265 RX_Opcode_Decoded * rx,
266 int (* getbyte)(void *),
269 LocalData lds, * ld = &lds;
270 unsigned char op[20] = {0};
273 lds.getbyte = getbyte;
277 memset (rx, 0, sizeof (*rx));
281 /*----------------------------------------------------------------------*/
285 switch (op[0] & 0xff)
292 printf ("\033[33m%s\033[0m %02x\n",
293 "/** 0000 0000 brk */",
297 #line 987 "rx-decode.opc"
307 printf ("\033[33m%s\033[0m %02x\n",
308 "/** 0000 0001 dbt */",
312 #line 990 "rx-decode.opc"
322 printf ("\033[33m%s\033[0m %02x\n",
323 "/** 0000 0010 rts */",
327 #line 768 "rx-decode.opc"
330 /*----------------------------------------------------------------------*/
340 printf ("\033[33m%s\033[0m %02x\n",
341 "/** 0000 0011 nop */",
345 #line 774 "rx-decode.opc"
348 /*----------------------------------------------------------------------*/
349 /* STRING FUNCTIONS */
355 /** 0000 0100 bra.a %a0 */
358 printf ("\033[33m%s\033[0m %02x\n",
359 "/** 0000 0100 bra.a %a0 */",
363 #line 746 "rx-decode.opc"
364 ID(branch); DC(pc + IMMex(3));
370 /** 0000 0101 bsr.a %a0 */
373 printf ("\033[33m%s\033[0m %02x\n",
374 "/** 0000 0101 bsr.a %a0 */",
378 #line 762 "rx-decode.opc"
379 ID(jsr); DC(pc + IMMex(3));
385 switch (op[1] & 0xff)
389 switch (op[2] & 0x00)
394 /** 0000 0110 mx00 00ss rsrc rdst sub %2%S2, %1 */
395 #line 542 "rx-decode.opc"
396 int mx AU = (op[1] >> 6) & 0x03;
397 #line 542 "rx-decode.opc"
398 int ss AU = op[1] & 0x03;
399 #line 542 "rx-decode.opc"
400 int rsrc AU = (op[2] >> 4) & 0x0f;
401 #line 542 "rx-decode.opc"
402 int rdst AU = op[2] & 0x0f;
405 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
406 "/** 0000 0110 mx00 00ss rsrc rdst sub %2%S2, %1 */",
407 op[0], op[1], op[2]);
408 printf (" mx = 0x%x,", mx);
409 printf (" ss = 0x%x,", ss);
410 printf (" rsrc = 0x%x,", rsrc);
411 printf (" rdst = 0x%x\n", rdst);
413 SYNTAX("sub %2%S2, %1");
414 #line 542 "rx-decode.opc"
415 ID(sub); S2Pm(ss, rsrc, mx); SR(rdst); DR(rdst); F_OSZC;
423 switch (op[2] & 0x00)
432 switch (op[2] & 0x00)
441 switch (op[2] & 0x00)
450 switch (op[2] & 0x00)
455 /** 0000 0110 mx00 01ss rsrc rdst cmp %2%S2, %1 */
456 #line 530 "rx-decode.opc"
457 int mx AU = (op[1] >> 6) & 0x03;
458 #line 530 "rx-decode.opc"
459 int ss AU = op[1] & 0x03;
460 #line 530 "rx-decode.opc"
461 int rsrc AU = (op[2] >> 4) & 0x0f;
462 #line 530 "rx-decode.opc"
463 int rdst AU = op[2] & 0x0f;
466 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
467 "/** 0000 0110 mx00 01ss rsrc rdst cmp %2%S2, %1 */",
468 op[0], op[1], op[2]);
469 printf (" mx = 0x%x,", mx);
470 printf (" ss = 0x%x,", ss);
471 printf (" rsrc = 0x%x,", rsrc);
472 printf (" rdst = 0x%x\n", rdst);
474 SYNTAX("cmp %2%S2, %1");
475 #line 530 "rx-decode.opc"
476 ID(sub); S2Pm(ss, rsrc, mx); SR(rdst); F_OSZC;
478 /*----------------------------------------------------------------------*/
487 switch (op[2] & 0x00)
496 switch (op[2] & 0x00)
505 switch (op[2] & 0x00)
514 switch (op[2] & 0x00)
519 /** 0000 0110 mx00 10ss rsrc rdst add %1%S1, %0 */
520 #line 506 "rx-decode.opc"
521 int mx AU = (op[1] >> 6) & 0x03;
522 #line 506 "rx-decode.opc"
523 int ss AU = op[1] & 0x03;
524 #line 506 "rx-decode.opc"
525 int rsrc AU = (op[2] >> 4) & 0x0f;
526 #line 506 "rx-decode.opc"
527 int rdst AU = op[2] & 0x0f;
530 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
531 "/** 0000 0110 mx00 10ss rsrc rdst add %1%S1, %0 */",
532 op[0], op[1], op[2]);
533 printf (" mx = 0x%x,", mx);
534 printf (" ss = 0x%x,", ss);
535 printf (" rsrc = 0x%x,", rsrc);
536 printf (" rdst = 0x%x\n", rdst);
538 SYNTAX("add %1%S1, %0");
539 #line 506 "rx-decode.opc"
540 ID(add); SPm(ss, rsrc, mx); DR(rdst); F_OSZC;
548 switch (op[2] & 0x00)
557 switch (op[2] & 0x00)
566 switch (op[2] & 0x00)
575 switch (op[2] & 0x00)
580 /** 0000 0110 mx00 11ss rsrc rdst mul %1%S1, %0 */
581 #line 611 "rx-decode.opc"
582 int mx AU = (op[1] >> 6) & 0x03;
583 #line 611 "rx-decode.opc"
584 int ss AU = op[1] & 0x03;
585 #line 611 "rx-decode.opc"
586 int rsrc AU = (op[2] >> 4) & 0x0f;
587 #line 611 "rx-decode.opc"
588 int rdst AU = op[2] & 0x0f;
591 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
592 "/** 0000 0110 mx00 11ss rsrc rdst mul %1%S1, %0 */",
593 op[0], op[1], op[2]);
594 printf (" mx = 0x%x,", mx);
595 printf (" ss = 0x%x,", ss);
596 printf (" rsrc = 0x%x,", rsrc);
597 printf (" rdst = 0x%x\n", rdst);
599 SYNTAX("mul %1%S1, %0");
600 #line 611 "rx-decode.opc"
601 ID(mul); SPm(ss, rsrc, mx); DR(rdst); F_____;
609 switch (op[2] & 0x00)
618 switch (op[2] & 0x00)
627 switch (op[2] & 0x00)
636 switch (op[2] & 0x00)
641 /** 0000 0110 mx01 00ss rsrc rdst and %1%S1, %0 */
642 #line 419 "rx-decode.opc"
643 int mx AU = (op[1] >> 6) & 0x03;
644 #line 419 "rx-decode.opc"
645 int ss AU = op[1] & 0x03;
646 #line 419 "rx-decode.opc"
647 int rsrc AU = (op[2] >> 4) & 0x0f;
648 #line 419 "rx-decode.opc"
649 int rdst AU = op[2] & 0x0f;
652 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
653 "/** 0000 0110 mx01 00ss rsrc rdst and %1%S1, %0 */",
654 op[0], op[1], op[2]);
655 printf (" mx = 0x%x,", mx);
656 printf (" ss = 0x%x,", ss);
657 printf (" rsrc = 0x%x,", rsrc);
658 printf (" rdst = 0x%x\n", rdst);
660 SYNTAX("and %1%S1, %0");
661 #line 419 "rx-decode.opc"
662 ID(and); SPm(ss, rsrc, mx); DR(rdst); F__SZ_;
670 switch (op[2] & 0x00)
679 switch (op[2] & 0x00)
688 switch (op[2] & 0x00)
697 switch (op[2] & 0x00)
702 /** 0000 0110 mx01 01ss rsrc rdst or %1%S1, %0 */
703 #line 437 "rx-decode.opc"
704 int mx AU = (op[1] >> 6) & 0x03;
705 #line 437 "rx-decode.opc"
706 int ss AU = op[1] & 0x03;
707 #line 437 "rx-decode.opc"
708 int rsrc AU = (op[2] >> 4) & 0x0f;
709 #line 437 "rx-decode.opc"
710 int rdst AU = op[2] & 0x0f;
713 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
714 "/** 0000 0110 mx01 01ss rsrc rdst or %1%S1, %0 */",
715 op[0], op[1], op[2]);
716 printf (" mx = 0x%x,", mx);
717 printf (" ss = 0x%x,", ss);
718 printf (" rsrc = 0x%x,", rsrc);
719 printf (" rdst = 0x%x\n", rdst);
721 SYNTAX("or %1%S1, %0");
722 #line 437 "rx-decode.opc"
723 ID(or); SPm(ss, rsrc, mx); DR(rdst); F__SZ_;
731 switch (op[2] & 0x00)
740 switch (op[2] & 0x00)
749 switch (op[2] & 0x00)
758 switch (op[2] & 0xff)
762 switch (op[3] & 0x00)
767 /** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb %1%S1, %0 */
768 #line 555 "rx-decode.opc"
769 int mx AU = (op[1] >> 6) & 0x03;
770 #line 555 "rx-decode.opc"
771 int sp AU = op[1] & 0x03;
772 #line 555 "rx-decode.opc"
773 int rsrc AU = (op[3] >> 4) & 0x0f;
774 #line 555 "rx-decode.opc"
775 int rdst AU = op[3] & 0x0f;
778 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
779 "/** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb %1%S1, %0 */",
780 op[0], op[1], op[2], op[3]);
781 printf (" mx = 0x%x,", mx);
782 printf (" sp = 0x%x,", sp);
783 printf (" rsrc = 0x%x,", rsrc);
784 printf (" rdst = 0x%x\n", rdst);
786 SYNTAX("sbb %1%S1, %0");
787 #line 555 "rx-decode.opc"
788 ID(sbb); SPm(sp, rsrc, mx); DR(rdst); F_OSZC;
790 /*----------------------------------------------------------------------*/
799 switch (op[3] & 0x00)
804 /** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max %1%S1, %0 */
805 #line 584 "rx-decode.opc"
806 int mx AU = (op[1] >> 6) & 0x03;
807 #line 584 "rx-decode.opc"
808 int ss AU = op[1] & 0x03;
809 #line 584 "rx-decode.opc"
810 int rsrc AU = (op[3] >> 4) & 0x0f;
811 #line 584 "rx-decode.opc"
812 int rdst AU = op[3] & 0x0f;
815 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
816 "/** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max %1%S1, %0 */",
817 op[0], op[1], op[2], op[3]);
818 printf (" mx = 0x%x,", mx);
819 printf (" ss = 0x%x,", ss);
820 printf (" rsrc = 0x%x,", rsrc);
821 printf (" rdst = 0x%x\n", rdst);
823 SYNTAX("max %1%S1, %0");
824 #line 584 "rx-decode.opc"
825 ID(max); SPm(ss, rsrc, mx); DR(rdst);
827 /*----------------------------------------------------------------------*/
836 switch (op[3] & 0x00)
841 /** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min %1%S1, %0 */
842 #line 596 "rx-decode.opc"
843 int mx AU = (op[1] >> 6) & 0x03;
844 #line 596 "rx-decode.opc"
845 int ss AU = op[1] & 0x03;
846 #line 596 "rx-decode.opc"
847 int rsrc AU = (op[3] >> 4) & 0x0f;
848 #line 596 "rx-decode.opc"
849 int rdst AU = op[3] & 0x0f;
852 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
853 "/** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min %1%S1, %0 */",
854 op[0], op[1], op[2], op[3]);
855 printf (" mx = 0x%x,", mx);
856 printf (" ss = 0x%x,", ss);
857 printf (" rsrc = 0x%x,", rsrc);
858 printf (" rdst = 0x%x\n", rdst);
860 SYNTAX("min %1%S1, %0");
861 #line 596 "rx-decode.opc"
862 ID(min); SPm(ss, rsrc, mx); DR(rdst);
864 /*----------------------------------------------------------------------*/
873 switch (op[3] & 0x00)
878 /** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul %1%S1, %0 */
879 #line 626 "rx-decode.opc"
880 int mx AU = (op[1] >> 6) & 0x03;
881 #line 626 "rx-decode.opc"
882 int ss AU = op[1] & 0x03;
883 #line 626 "rx-decode.opc"
884 int rsrc AU = (op[3] >> 4) & 0x0f;
885 #line 626 "rx-decode.opc"
886 int rdst AU = op[3] & 0x0f;
889 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
890 "/** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul %1%S1, %0 */",
891 op[0], op[1], op[2], op[3]);
892 printf (" mx = 0x%x,", mx);
893 printf (" ss = 0x%x,", ss);
894 printf (" rsrc = 0x%x,", rsrc);
895 printf (" rdst = 0x%x\n", rdst);
897 SYNTAX("emul %1%S1, %0");
898 #line 626 "rx-decode.opc"
899 ID(emul); SPm(ss, rsrc, mx); DR(rdst);
901 /*----------------------------------------------------------------------*/
910 switch (op[3] & 0x00)
915 /** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu %1%S1, %0 */
916 #line 638 "rx-decode.opc"
917 int mx AU = (op[1] >> 6) & 0x03;
918 #line 638 "rx-decode.opc"
919 int ss AU = op[1] & 0x03;
920 #line 638 "rx-decode.opc"
921 int rsrc AU = (op[3] >> 4) & 0x0f;
922 #line 638 "rx-decode.opc"
923 int rdst AU = op[3] & 0x0f;
926 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
927 "/** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu %1%S1, %0 */",
928 op[0], op[1], op[2], op[3]);
929 printf (" mx = 0x%x,", mx);
930 printf (" ss = 0x%x,", ss);
931 printf (" rsrc = 0x%x,", rsrc);
932 printf (" rdst = 0x%x\n", rdst);
934 SYNTAX("emulu %1%S1, %0");
935 #line 638 "rx-decode.opc"
936 ID(emulu); SPm(ss, rsrc, mx); DR(rdst);
938 /*----------------------------------------------------------------------*/
947 switch (op[3] & 0x00)
952 /** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div %1%S1, %0 */
953 #line 650 "rx-decode.opc"
954 int mx AU = (op[1] >> 6) & 0x03;
955 #line 650 "rx-decode.opc"
956 int ss AU = op[1] & 0x03;
957 #line 650 "rx-decode.opc"
958 int rsrc AU = (op[3] >> 4) & 0x0f;
959 #line 650 "rx-decode.opc"
960 int rdst AU = op[3] & 0x0f;
963 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
964 "/** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div %1%S1, %0 */",
965 op[0], op[1], op[2], op[3]);
966 printf (" mx = 0x%x,", mx);
967 printf (" ss = 0x%x,", ss);
968 printf (" rsrc = 0x%x,", rsrc);
969 printf (" rdst = 0x%x\n", rdst);
971 SYNTAX("div %1%S1, %0");
972 #line 650 "rx-decode.opc"
973 ID(div); SPm(ss, rsrc, mx); DR(rdst); F_O___;
975 /*----------------------------------------------------------------------*/
984 switch (op[3] & 0x00)
989 /** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu %1%S1, %0 */
990 #line 662 "rx-decode.opc"
991 int mx AU = (op[1] >> 6) & 0x03;
992 #line 662 "rx-decode.opc"
993 int ss AU = op[1] & 0x03;
994 #line 662 "rx-decode.opc"
995 int rsrc AU = (op[3] >> 4) & 0x0f;
996 #line 662 "rx-decode.opc"
997 int rdst AU = op[3] & 0x0f;
1000 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1001 "/** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu %1%S1, %0 */",
1002 op[0], op[1], op[2], op[3]);
1003 printf (" mx = 0x%x,", mx);
1004 printf (" ss = 0x%x,", ss);
1005 printf (" rsrc = 0x%x,", rsrc);
1006 printf (" rdst = 0x%x\n", rdst);
1008 SYNTAX("divu %1%S1, %0");
1009 #line 662 "rx-decode.opc"
1010 ID(divu); SPm(ss, rsrc, mx); DR(rdst); F_O___;
1012 /*----------------------------------------------------------------------*/
1021 switch (op[3] & 0x00)
1026 /** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst %1%S1, %2 */
1027 #line 473 "rx-decode.opc"
1028 int mx AU = (op[1] >> 6) & 0x03;
1029 #line 473 "rx-decode.opc"
1030 int ss AU = op[1] & 0x03;
1031 #line 473 "rx-decode.opc"
1032 int rsrc AU = (op[3] >> 4) & 0x0f;
1033 #line 473 "rx-decode.opc"
1034 int rdst AU = op[3] & 0x0f;
1037 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1038 "/** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst %1%S1, %2 */",
1039 op[0], op[1], op[2], op[3]);
1040 printf (" mx = 0x%x,", mx);
1041 printf (" ss = 0x%x,", ss);
1042 printf (" rsrc = 0x%x,", rsrc);
1043 printf (" rdst = 0x%x\n", rdst);
1045 SYNTAX("tst %1%S1, %2");
1046 #line 473 "rx-decode.opc"
1047 ID(and); SPm(ss, rsrc, mx); S2R(rdst); F__SZ_;
1049 /*----------------------------------------------------------------------*/
1058 switch (op[3] & 0x00)
1063 /** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor %1%S1, %0 */
1064 #line 452 "rx-decode.opc"
1065 int mx AU = (op[1] >> 6) & 0x03;
1066 #line 452 "rx-decode.opc"
1067 int ss AU = op[1] & 0x03;
1068 #line 452 "rx-decode.opc"
1069 int rsrc AU = (op[3] >> 4) & 0x0f;
1070 #line 452 "rx-decode.opc"
1071 int rdst AU = op[3] & 0x0f;
1074 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1075 "/** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor %1%S1, %0 */",
1076 op[0], op[1], op[2], op[3]);
1077 printf (" mx = 0x%x,", mx);
1078 printf (" ss = 0x%x,", ss);
1079 printf (" rsrc = 0x%x,", rsrc);
1080 printf (" rdst = 0x%x\n", rdst);
1082 SYNTAX("xor %1%S1, %0");
1083 #line 452 "rx-decode.opc"
1084 ID(xor); SPm(ss, rsrc, mx); DR(rdst); F__SZ_;
1086 /*----------------------------------------------------------------------*/
1095 switch (op[3] & 0x00)
1100 /** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg %1%S1, %0 */
1101 #line 386 "rx-decode.opc"
1102 int mx AU = (op[1] >> 6) & 0x03;
1103 #line 386 "rx-decode.opc"
1104 int ss AU = op[1] & 0x03;
1105 #line 386 "rx-decode.opc"
1106 int rsrc AU = (op[3] >> 4) & 0x0f;
1107 #line 386 "rx-decode.opc"
1108 int rdst AU = op[3] & 0x0f;
1111 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1112 "/** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg %1%S1, %0 */",
1113 op[0], op[1], op[2], op[3]);
1114 printf (" mx = 0x%x,", mx);
1115 printf (" ss = 0x%x,", ss);
1116 printf (" rsrc = 0x%x,", rsrc);
1117 printf (" rdst = 0x%x\n", rdst);
1119 SYNTAX("xchg %1%S1, %0");
1120 #line 386 "rx-decode.opc"
1121 ID(xchg); DR(rdst); SPm(ss, rsrc, mx);
1123 /*----------------------------------------------------------------------*/
1132 switch (op[3] & 0x00)
1137 /** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof %1%S1, %0 */
1138 #line 891 "rx-decode.opc"
1139 int mx AU = (op[1] >> 6) & 0x03;
1140 #line 891 "rx-decode.opc"
1141 int sd AU = op[1] & 0x03;
1142 #line 891 "rx-decode.opc"
1143 int rsrc AU = (op[3] >> 4) & 0x0f;
1144 #line 891 "rx-decode.opc"
1145 int rdst AU = op[3] & 0x0f;
1148 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1149 "/** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof %1%S1, %0 */",
1150 op[0], op[1], op[2], op[3]);
1151 printf (" mx = 0x%x,", mx);
1152 printf (" sd = 0x%x,", sd);
1153 printf (" rsrc = 0x%x,", rsrc);
1154 printf (" rdst = 0x%x\n", rdst);
1156 SYNTAX("itof %1%S1, %0");
1157 #line 891 "rx-decode.opc"
1158 ID(itof); DR (rdst); SPm(sd, rsrc, mx); F__SZ_;
1160 /*----------------------------------------------------------------------*/
1167 default: UNSUPPORTED(); break;
1172 switch (op[2] & 0xff)
1176 switch (op[3] & 0x00)
1179 goto op_semantics_7;
1185 switch (op[3] & 0x00)
1188 goto op_semantics_8;
1194 switch (op[3] & 0x00)
1197 goto op_semantics_9;
1203 switch (op[3] & 0x00)
1206 goto op_semantics_10;
1212 switch (op[3] & 0x00)
1215 goto op_semantics_11;
1221 switch (op[3] & 0x00)
1224 goto op_semantics_12;
1230 switch (op[3] & 0x00)
1233 goto op_semantics_13;
1239 switch (op[3] & 0x00)
1242 goto op_semantics_14;
1248 switch (op[3] & 0x00)
1251 goto op_semantics_15;
1257 switch (op[3] & 0x00)
1260 goto op_semantics_16;
1266 switch (op[3] & 0x00)
1269 goto op_semantics_17;
1273 default: UNSUPPORTED(); break;
1278 switch (op[2] & 0xff)
1282 switch (op[3] & 0x00)
1285 goto op_semantics_7;
1291 switch (op[3] & 0x00)
1294 goto op_semantics_8;
1300 switch (op[3] & 0x00)
1303 goto op_semantics_9;
1309 switch (op[3] & 0x00)
1312 goto op_semantics_10;
1318 switch (op[3] & 0x00)
1321 goto op_semantics_11;
1327 switch (op[3] & 0x00)
1330 goto op_semantics_12;
1336 switch (op[3] & 0x00)
1339 goto op_semantics_13;
1345 switch (op[3] & 0x00)
1348 goto op_semantics_14;
1354 switch (op[3] & 0x00)
1357 goto op_semantics_15;
1363 switch (op[3] & 0x00)
1366 goto op_semantics_16;
1372 switch (op[3] & 0x00)
1375 goto op_semantics_17;
1379 default: UNSUPPORTED(); break;
1384 switch (op[2] & 0xff)
1388 switch (op[3] & 0x00)
1391 goto op_semantics_7;
1397 switch (op[3] & 0x00)
1400 goto op_semantics_8;
1406 switch (op[3] & 0x00)
1409 goto op_semantics_9;
1415 switch (op[3] & 0x00)
1418 goto op_semantics_10;
1424 switch (op[3] & 0x00)
1427 goto op_semantics_11;
1433 switch (op[3] & 0x00)
1436 goto op_semantics_12;
1442 switch (op[3] & 0x00)
1445 goto op_semantics_13;
1451 switch (op[3] & 0x00)
1454 goto op_semantics_14;
1460 switch (op[3] & 0x00)
1463 goto op_semantics_15;
1469 switch (op[3] & 0x00)
1472 goto op_semantics_16;
1478 switch (op[3] & 0x00)
1481 goto op_semantics_17;
1485 default: UNSUPPORTED(); break;
1490 switch (op[2] & 0x00)
1493 goto op_semantics_1;
1499 switch (op[2] & 0x00)
1502 goto op_semantics_1;
1508 switch (op[2] & 0x00)
1511 goto op_semantics_1;
1517 switch (op[2] & 0x00)
1520 goto op_semantics_1;
1526 switch (op[2] & 0x00)
1529 goto op_semantics_2;
1535 switch (op[2] & 0x00)
1538 goto op_semantics_2;
1544 switch (op[2] & 0x00)
1547 goto op_semantics_2;
1553 switch (op[2] & 0x00)
1556 goto op_semantics_2;
1562 switch (op[2] & 0x00)
1565 goto op_semantics_3;
1571 switch (op[2] & 0x00)
1574 goto op_semantics_3;
1580 switch (op[2] & 0x00)
1583 goto op_semantics_3;
1589 switch (op[2] & 0x00)
1592 goto op_semantics_3;
1598 switch (op[2] & 0x00)
1601 goto op_semantics_4;
1607 switch (op[2] & 0x00)
1610 goto op_semantics_4;
1616 switch (op[2] & 0x00)
1619 goto op_semantics_4;
1625 switch (op[2] & 0x00)
1628 goto op_semantics_4;
1634 switch (op[2] & 0x00)
1637 goto op_semantics_5;
1643 switch (op[2] & 0x00)
1646 goto op_semantics_5;
1652 switch (op[2] & 0x00)
1655 goto op_semantics_5;
1661 switch (op[2] & 0x00)
1664 goto op_semantics_5;
1670 switch (op[2] & 0x00)
1673 goto op_semantics_6;
1679 switch (op[2] & 0x00)
1682 goto op_semantics_6;
1688 switch (op[2] & 0x00)
1691 goto op_semantics_6;
1697 switch (op[2] & 0x00)
1700 goto op_semantics_6;
1706 switch (op[2] & 0xff)
1710 switch (op[3] & 0x00)
1713 goto op_semantics_7;
1719 switch (op[3] & 0x00)
1722 goto op_semantics_8;
1728 switch (op[3] & 0x00)
1731 goto op_semantics_9;
1737 switch (op[3] & 0x00)
1740 goto op_semantics_10;
1746 switch (op[3] & 0x00)
1749 goto op_semantics_11;
1755 switch (op[3] & 0x00)
1758 goto op_semantics_12;
1764 switch (op[3] & 0x00)
1767 goto op_semantics_13;
1773 switch (op[3] & 0x00)
1776 goto op_semantics_14;
1782 switch (op[3] & 0x00)
1785 goto op_semantics_15;
1791 switch (op[3] & 0x00)
1794 goto op_semantics_16;
1800 switch (op[3] & 0x00)
1803 goto op_semantics_17;
1807 default: UNSUPPORTED(); break;
1812 switch (op[2] & 0xff)
1816 switch (op[3] & 0x00)
1819 goto op_semantics_7;
1825 switch (op[3] & 0x00)
1828 goto op_semantics_8;
1834 switch (op[3] & 0x00)
1837 goto op_semantics_9;
1843 switch (op[3] & 0x00)
1846 goto op_semantics_10;
1852 switch (op[3] & 0x00)
1855 goto op_semantics_11;
1861 switch (op[3] & 0x00)
1864 goto op_semantics_12;
1870 switch (op[3] & 0x00)
1873 goto op_semantics_13;
1879 switch (op[3] & 0x00)
1882 goto op_semantics_14;
1888 switch (op[3] & 0x00)
1891 goto op_semantics_15;
1897 switch (op[3] & 0x00)
1900 goto op_semantics_16;
1906 switch (op[3] & 0x00)
1909 goto op_semantics_17;
1913 default: UNSUPPORTED(); break;
1918 switch (op[2] & 0xff)
1922 switch (op[3] & 0x00)
1925 goto op_semantics_7;
1931 switch (op[3] & 0x00)
1934 goto op_semantics_8;
1940 switch (op[3] & 0x00)
1943 goto op_semantics_9;
1949 switch (op[3] & 0x00)
1952 goto op_semantics_10;
1958 switch (op[3] & 0x00)
1961 goto op_semantics_11;
1967 switch (op[3] & 0x00)
1970 goto op_semantics_12;
1976 switch (op[3] & 0x00)
1979 goto op_semantics_13;
1985 switch (op[3] & 0x00)
1988 goto op_semantics_14;
1994 switch (op[3] & 0x00)
1997 goto op_semantics_15;
2003 switch (op[3] & 0x00)
2006 goto op_semantics_16;
2012 switch (op[3] & 0x00)
2015 goto op_semantics_17;
2019 default: UNSUPPORTED(); break;
2024 switch (op[2] & 0xff)
2028 switch (op[3] & 0x00)
2031 goto op_semantics_7;
2037 switch (op[3] & 0x00)
2040 goto op_semantics_8;
2046 switch (op[3] & 0x00)
2049 goto op_semantics_9;
2055 switch (op[3] & 0x00)
2058 goto op_semantics_10;
2064 switch (op[3] & 0x00)
2067 goto op_semantics_11;
2073 switch (op[3] & 0x00)
2076 goto op_semantics_12;
2082 switch (op[3] & 0x00)
2085 goto op_semantics_13;
2091 switch (op[3] & 0x00)
2094 goto op_semantics_14;
2100 switch (op[3] & 0x00)
2103 goto op_semantics_15;
2109 switch (op[3] & 0x00)
2112 goto op_semantics_16;
2118 switch (op[3] & 0x00)
2121 goto op_semantics_17;
2125 default: UNSUPPORTED(); break;
2130 switch (op[2] & 0x00)
2133 goto op_semantics_1;
2139 switch (op[2] & 0x00)
2142 goto op_semantics_1;
2148 switch (op[2] & 0x00)
2151 goto op_semantics_1;
2157 switch (op[2] & 0x00)
2160 goto op_semantics_1;
2166 switch (op[2] & 0x00)
2169 goto op_semantics_2;
2175 switch (op[2] & 0x00)
2178 goto op_semantics_2;
2184 switch (op[2] & 0x00)
2187 goto op_semantics_2;
2193 switch (op[2] & 0x00)
2196 goto op_semantics_2;
2202 switch (op[2] & 0x00)
2205 goto op_semantics_3;
2211 switch (op[2] & 0x00)
2214 goto op_semantics_3;
2220 switch (op[2] & 0x00)
2223 goto op_semantics_3;
2229 switch (op[2] & 0x00)
2232 goto op_semantics_3;
2238 switch (op[2] & 0x00)
2241 goto op_semantics_4;
2247 switch (op[2] & 0x00)
2250 goto op_semantics_4;
2256 switch (op[2] & 0x00)
2259 goto op_semantics_4;
2265 switch (op[2] & 0x00)
2268 goto op_semantics_4;
2274 switch (op[2] & 0x00)
2277 goto op_semantics_5;
2283 switch (op[2] & 0x00)
2286 goto op_semantics_5;
2292 switch (op[2] & 0x00)
2295 goto op_semantics_5;
2301 switch (op[2] & 0x00)
2304 goto op_semantics_5;
2310 switch (op[2] & 0x00)
2313 goto op_semantics_6;
2319 switch (op[2] & 0x00)
2322 goto op_semantics_6;
2328 switch (op[2] & 0x00)
2331 goto op_semantics_6;
2337 switch (op[2] & 0x00)
2340 goto op_semantics_6;
2346 switch (op[2] & 0xff)
2350 switch (op[3] & 0x00)
2353 goto op_semantics_7;
2359 switch (op[3] & 0x00)
2364 /** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc %1%S1, %0 */
2365 #line 494 "rx-decode.opc"
2366 int ss AU = op[1] & 0x03;
2367 #line 494 "rx-decode.opc"
2368 int rsrc AU = (op[3] >> 4) & 0x0f;
2369 #line 494 "rx-decode.opc"
2370 int rdst AU = op[3] & 0x0f;
2373 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
2374 "/** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc %1%S1, %0 */",
2375 op[0], op[1], op[2], op[3]);
2376 printf (" ss = 0x%x,", ss);
2377 printf (" rsrc = 0x%x,", rsrc);
2378 printf (" rdst = 0x%x\n", rdst);
2380 SYNTAX("adc %1%S1, %0");
2381 #line 494 "rx-decode.opc"
2382 ID(adc); SPm(ss, rsrc, 2); DR(rdst); F_OSZC;
2384 /*----------------------------------------------------------------------*/
2393 switch (op[3] & 0x00)
2396 goto op_semantics_8;
2402 switch (op[3] & 0x00)
2405 goto op_semantics_9;
2411 switch (op[3] & 0x00)
2414 goto op_semantics_10;
2420 switch (op[3] & 0x00)
2423 goto op_semantics_11;
2429 switch (op[3] & 0x00)
2432 goto op_semantics_12;
2438 switch (op[3] & 0x00)
2441 goto op_semantics_13;
2447 switch (op[3] & 0x00)
2450 goto op_semantics_14;
2456 switch (op[3] & 0x00)
2459 goto op_semantics_15;
2465 switch (op[3] & 0x00)
2468 goto op_semantics_16;
2474 switch (op[3] & 0x00)
2477 goto op_semantics_17;
2481 default: UNSUPPORTED(); break;
2486 switch (op[2] & 0xff)
2490 switch (op[3] & 0x00)
2493 goto op_semantics_7;
2499 switch (op[3] & 0x00)
2502 goto op_semantics_18;
2508 switch (op[3] & 0x00)
2511 goto op_semantics_8;
2517 switch (op[3] & 0x00)
2520 goto op_semantics_9;
2526 switch (op[3] & 0x00)
2529 goto op_semantics_10;
2535 switch (op[3] & 0x00)
2538 goto op_semantics_11;
2544 switch (op[3] & 0x00)
2547 goto op_semantics_12;
2553 switch (op[3] & 0x00)
2556 goto op_semantics_13;
2562 switch (op[3] & 0x00)
2565 goto op_semantics_14;
2571 switch (op[3] & 0x00)
2574 goto op_semantics_15;
2580 switch (op[3] & 0x00)
2583 goto op_semantics_16;
2589 switch (op[3] & 0x00)
2592 goto op_semantics_17;
2596 default: UNSUPPORTED(); break;
2601 switch (op[2] & 0xff)
2605 switch (op[3] & 0x00)
2608 goto op_semantics_7;
2614 switch (op[3] & 0x00)
2617 goto op_semantics_18;
2623 switch (op[3] & 0x00)
2626 goto op_semantics_8;
2632 switch (op[3] & 0x00)
2635 goto op_semantics_9;
2641 switch (op[3] & 0x00)
2644 goto op_semantics_10;
2650 switch (op[3] & 0x00)
2653 goto op_semantics_11;
2659 switch (op[3] & 0x00)
2662 goto op_semantics_12;
2668 switch (op[3] & 0x00)
2671 goto op_semantics_13;
2677 switch (op[3] & 0x00)
2680 goto op_semantics_14;
2686 switch (op[3] & 0x00)
2689 goto op_semantics_15;
2695 switch (op[3] & 0x00)
2698 goto op_semantics_16;
2704 switch (op[3] & 0x00)
2707 goto op_semantics_17;
2711 default: UNSUPPORTED(); break;
2716 switch (op[2] & 0xff)
2720 switch (op[3] & 0x00)
2723 goto op_semantics_7;
2729 switch (op[3] & 0x00)
2732 goto op_semantics_18;
2738 switch (op[3] & 0x00)
2741 goto op_semantics_8;
2747 switch (op[3] & 0x00)
2750 goto op_semantics_9;
2756 switch (op[3] & 0x00)
2759 goto op_semantics_10;
2765 switch (op[3] & 0x00)
2768 goto op_semantics_11;
2774 switch (op[3] & 0x00)
2777 goto op_semantics_12;
2783 switch (op[3] & 0x00)
2786 goto op_semantics_13;
2792 switch (op[3] & 0x00)
2795 goto op_semantics_14;
2801 switch (op[3] & 0x00)
2804 goto op_semantics_15;
2810 switch (op[3] & 0x00)
2813 goto op_semantics_16;
2819 switch (op[3] & 0x00)
2822 goto op_semantics_17;
2826 default: UNSUPPORTED(); break;
2831 switch (op[2] & 0x00)
2834 goto op_semantics_1;
2840 switch (op[2] & 0x00)
2843 goto op_semantics_1;
2849 switch (op[2] & 0x00)
2852 goto op_semantics_1;
2858 switch (op[2] & 0x00)
2861 goto op_semantics_1;
2867 switch (op[2] & 0x00)
2870 goto op_semantics_2;
2876 switch (op[2] & 0x00)
2879 goto op_semantics_2;
2885 switch (op[2] & 0x00)
2888 goto op_semantics_2;
2894 switch (op[2] & 0x00)
2897 goto op_semantics_2;
2903 switch (op[2] & 0x00)
2906 goto op_semantics_3;
2912 switch (op[2] & 0x00)
2915 goto op_semantics_3;
2921 switch (op[2] & 0x00)
2924 goto op_semantics_3;
2930 switch (op[2] & 0x00)
2933 goto op_semantics_3;
2939 switch (op[2] & 0x00)
2942 goto op_semantics_4;
2948 switch (op[2] & 0x00)
2951 goto op_semantics_4;
2957 switch (op[2] & 0x00)
2960 goto op_semantics_4;
2966 switch (op[2] & 0x00)
2969 goto op_semantics_4;
2975 switch (op[2] & 0x00)
2978 goto op_semantics_5;
2984 switch (op[2] & 0x00)
2987 goto op_semantics_5;
2993 switch (op[2] & 0x00)
2996 goto op_semantics_5;
3002 switch (op[2] & 0x00)
3005 goto op_semantics_5;
3011 switch (op[2] & 0x00)
3014 goto op_semantics_6;
3020 switch (op[2] & 0x00)
3023 goto op_semantics_6;
3029 switch (op[2] & 0x00)
3032 goto op_semantics_6;
3038 switch (op[2] & 0x00)
3041 goto op_semantics_6;
3047 switch (op[2] & 0xff)
3051 switch (op[3] & 0x00)
3054 goto op_semantics_7;
3060 switch (op[3] & 0x00)
3063 goto op_semantics_8;
3069 switch (op[3] & 0x00)
3072 goto op_semantics_9;
3078 switch (op[3] & 0x00)
3081 goto op_semantics_10;
3087 switch (op[3] & 0x00)
3090 goto op_semantics_11;
3096 switch (op[3] & 0x00)
3099 goto op_semantics_12;
3105 switch (op[3] & 0x00)
3108 goto op_semantics_13;
3114 switch (op[3] & 0x00)
3117 goto op_semantics_14;
3123 switch (op[3] & 0x00)
3126 goto op_semantics_15;
3132 switch (op[3] & 0x00)
3135 goto op_semantics_16;
3141 switch (op[3] & 0x00)
3144 goto op_semantics_17;
3148 default: UNSUPPORTED(); break;
3153 switch (op[2] & 0xff)
3157 switch (op[3] & 0x00)
3160 goto op_semantics_7;
3166 switch (op[3] & 0x00)
3169 goto op_semantics_8;
3175 switch (op[3] & 0x00)
3178 goto op_semantics_9;
3184 switch (op[3] & 0x00)
3187 goto op_semantics_10;
3193 switch (op[3] & 0x00)
3196 goto op_semantics_11;
3202 switch (op[3] & 0x00)
3205 goto op_semantics_12;
3211 switch (op[3] & 0x00)
3214 goto op_semantics_13;
3220 switch (op[3] & 0x00)
3223 goto op_semantics_14;
3229 switch (op[3] & 0x00)
3232 goto op_semantics_15;
3238 switch (op[3] & 0x00)
3241 goto op_semantics_16;
3247 switch (op[3] & 0x00)
3250 goto op_semantics_17;
3254 default: UNSUPPORTED(); break;
3259 switch (op[2] & 0xff)
3263 switch (op[3] & 0x00)
3266 goto op_semantics_7;
3272 switch (op[3] & 0x00)
3275 goto op_semantics_8;
3281 switch (op[3] & 0x00)
3284 goto op_semantics_9;
3290 switch (op[3] & 0x00)
3293 goto op_semantics_10;
3299 switch (op[3] & 0x00)
3302 goto op_semantics_11;
3308 switch (op[3] & 0x00)
3311 goto op_semantics_12;
3317 switch (op[3] & 0x00)
3320 goto op_semantics_13;
3326 switch (op[3] & 0x00)
3329 goto op_semantics_14;
3335 switch (op[3] & 0x00)
3338 goto op_semantics_15;
3344 switch (op[3] & 0x00)
3347 goto op_semantics_16;
3353 switch (op[3] & 0x00)
3356 goto op_semantics_17;
3360 default: UNSUPPORTED(); break;
3365 switch (op[2] & 0xff)
3369 switch (op[3] & 0x00)
3372 goto op_semantics_7;
3378 switch (op[3] & 0x00)
3381 goto op_semantics_8;
3387 switch (op[3] & 0x00)
3390 goto op_semantics_9;
3396 switch (op[3] & 0x00)
3399 goto op_semantics_10;
3405 switch (op[3] & 0x00)
3408 goto op_semantics_11;
3414 switch (op[3] & 0x00)
3417 goto op_semantics_12;
3423 switch (op[3] & 0x00)
3426 goto op_semantics_13;
3432 switch (op[3] & 0x00)
3435 goto op_semantics_14;
3441 switch (op[3] & 0x00)
3444 goto op_semantics_15;
3450 switch (op[3] & 0x00)
3453 goto op_semantics_16;
3459 switch (op[3] & 0x00)
3462 goto op_semantics_17;
3466 default: UNSUPPORTED(); break;
3469 default: UNSUPPORTED(); break;
3481 /** 0000 1dsp bra.s %a0 */
3482 #line 737 "rx-decode.opc"
3483 int dsp AU = op[0] & 0x07;
3486 printf ("\033[33m%s\033[0m %02x\n",
3487 "/** 0000 1dsp bra.s %a0 */",
3489 printf (" dsp = 0x%x\n", dsp);
3491 SYNTAX("bra.s %a0");
3492 #line 737 "rx-decode.opc"
3493 ID(branch); DC(pc + dsp3map[dsp]);
3514 /** 0001 n dsp b%1.s %a0 */
3515 #line 727 "rx-decode.opc"
3516 int n AU = (op[0] >> 3) & 0x01;
3517 #line 727 "rx-decode.opc"
3518 int dsp AU = op[0] & 0x07;
3521 printf ("\033[33m%s\033[0m %02x\n",
3522 "/** 0001 n dsp b%1.s %a0 */",
3524 printf (" n = 0x%x,", n);
3525 printf (" dsp = 0x%x\n", dsp);
3527 SYNTAX("b%1.s %a0");
3528 #line 727 "rx-decode.opc"
3529 ID(branch); Scc(n); DC(pc + dsp3map[dsp]);
3549 /** 0010 cond b%1.b %a0 */
3550 #line 730 "rx-decode.opc"
3551 int cond AU = op[0] & 0x0f;
3554 printf ("\033[33m%s\033[0m %02x\n",
3555 "/** 0010 cond b%1.b %a0 */",
3557 printf (" cond = 0x%x\n", cond);
3559 SYNTAX("b%1.b %a0");
3560 #line 730 "rx-decode.opc"
3561 ID(branch); Scc(cond); DC(pc + IMMex (1));
3567 /** 0010 1110 bra.b %a0 */
3570 printf ("\033[33m%s\033[0m %02x\n",
3571 "/** 0010 1110 bra.b %a0 */",
3574 SYNTAX("bra.b %a0");
3575 #line 740 "rx-decode.opc"
3576 ID(branch); DC(pc + IMMex(1));
3582 /** 0011 1000 bra.w %a0 */
3585 printf ("\033[33m%s\033[0m %02x\n",
3586 "/** 0011 1000 bra.w %a0 */",
3589 SYNTAX("bra.w %a0");
3590 #line 743 "rx-decode.opc"
3591 ID(branch); DC(pc + IMMex(2));
3597 /** 0011 1001 bsr.w %a0 */
3600 printf ("\033[33m%s\033[0m %02x\n",
3601 "/** 0011 1001 bsr.w %a0 */",
3604 SYNTAX("bsr.w %a0");
3605 #line 759 "rx-decode.opc"
3606 ID(jsr); DC(pc + IMMex(2));
3613 /** 0011 101c b%1.w %a0 */
3614 #line 733 "rx-decode.opc"
3615 int c AU = op[0] & 0x01;
3618 printf ("\033[33m%s\033[0m %02x\n",
3619 "/** 0011 101c b%1.w %a0 */",
3621 printf (" c = 0x%x\n", c);
3623 SYNTAX("b%1.w %a0");
3624 #line 733 "rx-decode.opc"
3625 ID(branch); Scc(c); DC(pc + IMMex (2));
3632 switch (op[1] & 0x00)
3637 /** 0011 11sz d dst sppp mov%s #%1, %0 */
3638 #line 307 "rx-decode.opc"
3639 int sz AU = op[0] & 0x03;
3640 #line 307 "rx-decode.opc"
3641 int d AU = (op[1] >> 7) & 0x01;
3642 #line 307 "rx-decode.opc"
3643 int dst AU = (op[1] >> 4) & 0x07;
3644 #line 307 "rx-decode.opc"
3645 int sppp AU = op[1] & 0x0f;
3648 printf ("\033[33m%s\033[0m %02x %02x\n",
3649 "/** 0011 11sz d dst sppp mov%s #%1, %0 */",
3651 printf (" sz = 0x%x,", sz);
3652 printf (" d = 0x%x,", d);
3653 printf (" dst = 0x%x,", dst);
3654 printf (" sppp = 0x%x\n", sppp);
3656 SYNTAX("mov%s #%1, %0");
3657 #line 307 "rx-decode.opc"
3658 ID(mov); sBWL (sz); DIs(dst, d*16+sppp, sz); SC(IMM(1)); F_____;
3666 switch (op[1] & 0x00)
3669 goto op_semantics_19;
3675 switch (op[1] & 0x00)
3678 goto op_semantics_19;
3684 switch (op[1] & 0x00)
3688 /** 0011 1111 rega regb rtsd #%1, %2-%0 */
3689 #line 404 "rx-decode.opc"
3690 int rega AU = (op[1] >> 4) & 0x0f;
3691 #line 404 "rx-decode.opc"
3692 int regb AU = op[1] & 0x0f;
3695 printf ("\033[33m%s\033[0m %02x %02x\n",
3696 "/** 0011 1111 rega regb rtsd #%1, %2-%0 */",
3698 printf (" rega = 0x%x,", rega);
3699 printf (" regb = 0x%x\n", regb);
3701 SYNTAX("rtsd #%1, %2-%0");
3702 #line 404 "rx-decode.opc"
3703 ID(rtsd); SC(IMM(1) * 4); S2R(rega); DR(regb);
3705 /*----------------------------------------------------------------------*/
3714 switch (op[1] & 0x00)
3719 /** 0100 00ss rsrc rdst sub %2%S2, %1 */
3720 #line 539 "rx-decode.opc"
3721 int ss AU = op[0] & 0x03;
3722 #line 539 "rx-decode.opc"
3723 int rsrc AU = (op[1] >> 4) & 0x0f;
3724 #line 539 "rx-decode.opc"
3725 int rdst AU = op[1] & 0x0f;
3728 printf ("\033[33m%s\033[0m %02x %02x\n",
3729 "/** 0100 00ss rsrc rdst sub %2%S2, %1 */",
3731 printf (" ss = 0x%x,", ss);
3732 printf (" rsrc = 0x%x,", rsrc);
3733 printf (" rdst = 0x%x\n", rdst);
3735 SYNTAX("sub %2%S2, %1");
3736 #line 539 "rx-decode.opc"
3737 ID(sub); S2P(ss, rsrc); SR(rdst); DR(rdst); F_OSZC;
3745 switch (op[1] & 0x00)
3748 goto op_semantics_20;
3754 switch (op[1] & 0x00)
3757 goto op_semantics_20;
3763 switch (op[1] & 0x00)
3766 goto op_semantics_20;
3772 switch (op[1] & 0x00)
3777 /** 0100 01ss rsrc rdst cmp %2%S2, %1 */
3778 #line 527 "rx-decode.opc"
3779 int ss AU = op[0] & 0x03;
3780 #line 527 "rx-decode.opc"
3781 int rsrc AU = (op[1] >> 4) & 0x0f;
3782 #line 527 "rx-decode.opc"
3783 int rdst AU = op[1] & 0x0f;
3786 printf ("\033[33m%s\033[0m %02x %02x\n",
3787 "/** 0100 01ss rsrc rdst cmp %2%S2, %1 */",
3789 printf (" ss = 0x%x,", ss);
3790 printf (" rsrc = 0x%x,", rsrc);
3791 printf (" rdst = 0x%x\n", rdst);
3793 SYNTAX("cmp %2%S2, %1");
3794 #line 527 "rx-decode.opc"
3795 ID(sub); S2P(ss, rsrc); SR(rdst); F_OSZC;
3803 switch (op[1] & 0x00)
3806 goto op_semantics_21;
3812 switch (op[1] & 0x00)
3815 goto op_semantics_21;
3821 switch (op[1] & 0x00)
3824 goto op_semantics_21;
3830 switch (op[1] & 0x00)
3835 /** 0100 10ss rsrc rdst add %1%S1, %0 */
3836 #line 503 "rx-decode.opc"
3837 int ss AU = op[0] & 0x03;
3838 #line 503 "rx-decode.opc"
3839 int rsrc AU = (op[1] >> 4) & 0x0f;
3840 #line 503 "rx-decode.opc"
3841 int rdst AU = op[1] & 0x0f;
3844 printf ("\033[33m%s\033[0m %02x %02x\n",
3845 "/** 0100 10ss rsrc rdst add %1%S1, %0 */",
3847 printf (" ss = 0x%x,", ss);
3848 printf (" rsrc = 0x%x,", rsrc);
3849 printf (" rdst = 0x%x\n", rdst);
3851 SYNTAX("add %1%S1, %0");
3852 #line 503 "rx-decode.opc"
3853 ID(add); SP(ss, rsrc); DR(rdst); F_OSZC;
3861 switch (op[1] & 0x00)
3864 goto op_semantics_22;
3870 switch (op[1] & 0x00)
3873 goto op_semantics_22;
3879 switch (op[1] & 0x00)
3882 goto op_semantics_22;
3888 switch (op[1] & 0x00)
3893 /** 0100 11ss rsrc rdst mul %1%S1, %0 */
3894 #line 608 "rx-decode.opc"
3895 int ss AU = op[0] & 0x03;
3896 #line 608 "rx-decode.opc"
3897 int rsrc AU = (op[1] >> 4) & 0x0f;
3898 #line 608 "rx-decode.opc"
3899 int rdst AU = op[1] & 0x0f;
3902 printf ("\033[33m%s\033[0m %02x %02x\n",
3903 "/** 0100 11ss rsrc rdst mul %1%S1, %0 */",
3905 printf (" ss = 0x%x,", ss);
3906 printf (" rsrc = 0x%x,", rsrc);
3907 printf (" rdst = 0x%x\n", rdst);
3909 SYNTAX("mul %1%S1, %0");
3910 #line 608 "rx-decode.opc"
3911 ID(mul); SP(ss, rsrc); DR(rdst); F_____;
3919 switch (op[1] & 0x00)
3922 goto op_semantics_23;
3928 switch (op[1] & 0x00)
3931 goto op_semantics_23;
3937 switch (op[1] & 0x00)
3940 goto op_semantics_23;
3946 switch (op[1] & 0x00)
3951 /** 0101 00ss rsrc rdst and %1%S1, %0 */
3952 #line 416 "rx-decode.opc"
3953 int ss AU = op[0] & 0x03;
3954 #line 416 "rx-decode.opc"
3955 int rsrc AU = (op[1] >> 4) & 0x0f;
3956 #line 416 "rx-decode.opc"
3957 int rdst AU = op[1] & 0x0f;
3960 printf ("\033[33m%s\033[0m %02x %02x\n",
3961 "/** 0101 00ss rsrc rdst and %1%S1, %0 */",
3963 printf (" ss = 0x%x,", ss);
3964 printf (" rsrc = 0x%x,", rsrc);
3965 printf (" rdst = 0x%x\n", rdst);
3967 SYNTAX("and %1%S1, %0");
3968 #line 416 "rx-decode.opc"
3969 ID(and); SP(ss, rsrc); DR(rdst); F__SZ_;
3977 switch (op[1] & 0x00)
3980 goto op_semantics_24;
3986 switch (op[1] & 0x00)
3989 goto op_semantics_24;
3995 switch (op[1] & 0x00)
3998 goto op_semantics_24;
4004 switch (op[1] & 0x00)
4009 /** 0101 01ss rsrc rdst or %1%S1, %0 */
4010 #line 434 "rx-decode.opc"
4011 int ss AU = op[0] & 0x03;
4012 #line 434 "rx-decode.opc"
4013 int rsrc AU = (op[1] >> 4) & 0x0f;
4014 #line 434 "rx-decode.opc"
4015 int rdst AU = op[1] & 0x0f;
4018 printf ("\033[33m%s\033[0m %02x %02x\n",
4019 "/** 0101 01ss rsrc rdst or %1%S1, %0 */",
4021 printf (" ss = 0x%x,", ss);
4022 printf (" rsrc = 0x%x,", rsrc);
4023 printf (" rdst = 0x%x\n", rdst);
4025 SYNTAX("or %1%S1, %0");
4026 #line 434 "rx-decode.opc"
4027 ID(or); SP(ss, rsrc); DR(rdst); F__SZ_;
4035 switch (op[1] & 0x00)
4038 goto op_semantics_25;
4044 switch (op[1] & 0x00)
4047 goto op_semantics_25;
4053 switch (op[1] & 0x00)
4056 goto op_semantics_25;
4062 switch (op[1] & 0x00)
4067 /** 0101 1 s ss rsrc rdst movu%s %1, %0 */
4068 #line 355 "rx-decode.opc"
4069 int s AU = (op[0] >> 2) & 0x01;
4070 #line 355 "rx-decode.opc"
4071 int ss AU = op[0] & 0x03;
4072 #line 355 "rx-decode.opc"
4073 int rsrc AU = (op[1] >> 4) & 0x0f;
4074 #line 355 "rx-decode.opc"
4075 int rdst AU = op[1] & 0x0f;
4078 printf ("\033[33m%s\033[0m %02x %02x\n",
4079 "/** 0101 1 s ss rsrc rdst movu%s %1, %0 */",
4081 printf (" s = 0x%x,", s);
4082 printf (" ss = 0x%x,", ss);
4083 printf (" rsrc = 0x%x,", rsrc);
4084 printf (" rdst = 0x%x\n", rdst);
4086 SYNTAX("movu%s %1, %0");
4087 #line 355 "rx-decode.opc"
4088 ID(mov); uBWL(s); SD(ss, rsrc, s); DR(rdst); F_____;
4096 switch (op[1] & 0x00)
4099 goto op_semantics_26;
4105 switch (op[1] & 0x00)
4108 goto op_semantics_26;
4114 switch (op[1] & 0x00)
4117 goto op_semantics_26;
4123 switch (op[1] & 0x00)
4126 goto op_semantics_26;
4132 switch (op[1] & 0x00)
4135 goto op_semantics_26;
4141 switch (op[1] & 0x00)
4144 goto op_semantics_26;
4150 switch (op[1] & 0x00)
4153 goto op_semantics_26;
4159 switch (op[1] & 0x00)
4163 /** 0110 0000 immm rdst sub #%2, %0 */
4164 #line 536 "rx-decode.opc"
4165 int immm AU = (op[1] >> 4) & 0x0f;
4166 #line 536 "rx-decode.opc"
4167 int rdst AU = op[1] & 0x0f;
4170 printf ("\033[33m%s\033[0m %02x %02x\n",
4171 "/** 0110 0000 immm rdst sub #%2, %0 */",
4173 printf (" immm = 0x%x,", immm);
4174 printf (" rdst = 0x%x\n", rdst);
4176 SYNTAX("sub #%2, %0");
4177 #line 536 "rx-decode.opc"
4178 ID(sub); S2C(immm); SR(rdst); DR(rdst); F_OSZC;
4186 switch (op[1] & 0x00)
4190 /** 0110 0001 immm rdst cmp #%2, %1 */
4191 #line 518 "rx-decode.opc"
4192 int immm AU = (op[1] >> 4) & 0x0f;
4193 #line 518 "rx-decode.opc"
4194 int rdst AU = op[1] & 0x0f;
4197 printf ("\033[33m%s\033[0m %02x %02x\n",
4198 "/** 0110 0001 immm rdst cmp #%2, %1 */",
4200 printf (" immm = 0x%x,", immm);
4201 printf (" rdst = 0x%x\n", rdst);
4203 SYNTAX("cmp #%2, %1");
4204 #line 518 "rx-decode.opc"
4205 ID(sub); S2C(immm); SR(rdst); F_OSZC;
4213 switch (op[1] & 0x00)
4217 /** 0110 0010 immm rdst add #%1, %0 */
4218 #line 500 "rx-decode.opc"
4219 int immm AU = (op[1] >> 4) & 0x0f;
4220 #line 500 "rx-decode.opc"
4221 int rdst AU = op[1] & 0x0f;
4224 printf ("\033[33m%s\033[0m %02x %02x\n",
4225 "/** 0110 0010 immm rdst add #%1, %0 */",
4227 printf (" immm = 0x%x,", immm);
4228 printf (" rdst = 0x%x\n", rdst);
4230 SYNTAX("add #%1, %0");
4231 #line 500 "rx-decode.opc"
4232 ID(add); SC(immm); DR(rdst); F_OSZC;
4240 switch (op[1] & 0x00)
4244 /** 0110 0011 immm rdst mul #%1, %0 */
4245 #line 602 "rx-decode.opc"
4246 int immm AU = (op[1] >> 4) & 0x0f;
4247 #line 602 "rx-decode.opc"
4248 int rdst AU = op[1] & 0x0f;
4251 printf ("\033[33m%s\033[0m %02x %02x\n",
4252 "/** 0110 0011 immm rdst mul #%1, %0 */",
4254 printf (" immm = 0x%x,", immm);
4255 printf (" rdst = 0x%x\n", rdst);
4257 SYNTAX("mul #%1, %0");
4258 #line 602 "rx-decode.opc"
4259 ID(mul); DR(rdst); SC(immm); F_____;
4267 switch (op[1] & 0x00)
4271 /** 0110 0100 immm rdst and #%1, %0 */
4272 #line 410 "rx-decode.opc"
4273 int immm AU = (op[1] >> 4) & 0x0f;
4274 #line 410 "rx-decode.opc"
4275 int rdst AU = op[1] & 0x0f;
4278 printf ("\033[33m%s\033[0m %02x %02x\n",
4279 "/** 0110 0100 immm rdst and #%1, %0 */",
4281 printf (" immm = 0x%x,", immm);
4282 printf (" rdst = 0x%x\n", rdst);
4284 SYNTAX("and #%1, %0");
4285 #line 410 "rx-decode.opc"
4286 ID(and); SC(immm); DR(rdst); F__SZ_;
4294 switch (op[1] & 0x00)
4298 /** 0110 0101 immm rdst or #%1, %0 */
4299 #line 428 "rx-decode.opc"
4300 int immm AU = (op[1] >> 4) & 0x0f;
4301 #line 428 "rx-decode.opc"
4302 int rdst AU = op[1] & 0x0f;
4305 printf ("\033[33m%s\033[0m %02x %02x\n",
4306 "/** 0110 0101 immm rdst or #%1, %0 */",
4308 printf (" immm = 0x%x,", immm);
4309 printf (" rdst = 0x%x\n", rdst);
4311 SYNTAX("or #%1, %0");
4312 #line 428 "rx-decode.opc"
4313 ID(or); SC(immm); DR(rdst); F__SZ_;
4321 switch (op[1] & 0x00)
4325 /** 0110 0110 immm rdst mov%s #%1, %0 */
4326 #line 304 "rx-decode.opc"
4327 int immm AU = (op[1] >> 4) & 0x0f;
4328 #line 304 "rx-decode.opc"
4329 int rdst AU = op[1] & 0x0f;
4332 printf ("\033[33m%s\033[0m %02x %02x\n",
4333 "/** 0110 0110 immm rdst mov%s #%1, %0 */",
4335 printf (" immm = 0x%x,", immm);
4336 printf (" rdst = 0x%x\n", rdst);
4338 SYNTAX("mov%s #%1, %0");
4339 #line 304 "rx-decode.opc"
4340 ID(mov); DR(rdst); SC(immm); F_____;
4348 /** 0110 0111 rtsd #%1 */
4351 printf ("\033[33m%s\033[0m %02x\n",
4352 "/** 0110 0111 rtsd #%1 */",
4356 #line 401 "rx-decode.opc"
4357 ID(rtsd); SC(IMM(1) * 4);
4363 switch (op[1] & 0x00)
4368 /** 0110 100i mmmm rdst shlr #%2, %0 */
4369 #line 688 "rx-decode.opc"
4370 int i AU = op[0] & 0x01;
4371 #line 688 "rx-decode.opc"
4372 int mmmm AU = (op[1] >> 4) & 0x0f;
4373 #line 688 "rx-decode.opc"
4374 int rdst AU = op[1] & 0x0f;
4377 printf ("\033[33m%s\033[0m %02x %02x\n",
4378 "/** 0110 100i mmmm rdst shlr #%2, %0 */",
4380 printf (" i = 0x%x,", i);
4381 printf (" mmmm = 0x%x,", mmmm);
4382 printf (" rdst = 0x%x\n", rdst);
4384 SYNTAX("shlr #%2, %0");
4385 #line 688 "rx-decode.opc"
4386 ID(shlr); S2C(i*16+mmmm); SR(rdst); DR(rdst); F__SZC;
4394 switch (op[1] & 0x00)
4397 goto op_semantics_27;
4403 switch (op[1] & 0x00)
4408 /** 0110 101i mmmm rdst shar #%2, %0 */
4409 #line 678 "rx-decode.opc"
4410 int i AU = op[0] & 0x01;
4411 #line 678 "rx-decode.opc"
4412 int mmmm AU = (op[1] >> 4) & 0x0f;
4413 #line 678 "rx-decode.opc"
4414 int rdst AU = op[1] & 0x0f;
4417 printf ("\033[33m%s\033[0m %02x %02x\n",
4418 "/** 0110 101i mmmm rdst shar #%2, %0 */",
4420 printf (" i = 0x%x,", i);
4421 printf (" mmmm = 0x%x,", mmmm);
4422 printf (" rdst = 0x%x\n", rdst);
4424 SYNTAX("shar #%2, %0");
4425 #line 678 "rx-decode.opc"
4426 ID(shar); S2C(i*16+mmmm); SR(rdst); DR(rdst); F_0SZC;
4434 switch (op[1] & 0x00)
4437 goto op_semantics_28;
4443 switch (op[1] & 0x00)
4448 /** 0110 110i mmmm rdst shll #%2, %0 */
4449 #line 668 "rx-decode.opc"
4450 int i AU = op[0] & 0x01;
4451 #line 668 "rx-decode.opc"
4452 int mmmm AU = (op[1] >> 4) & 0x0f;
4453 #line 668 "rx-decode.opc"
4454 int rdst AU = op[1] & 0x0f;
4457 printf ("\033[33m%s\033[0m %02x %02x\n",
4458 "/** 0110 110i mmmm rdst shll #%2, %0 */",
4460 printf (" i = 0x%x,", i);
4461 printf (" mmmm = 0x%x,", mmmm);
4462 printf (" rdst = 0x%x\n", rdst);
4464 SYNTAX("shll #%2, %0");
4465 #line 668 "rx-decode.opc"
4466 ID(shll); S2C(i*16+mmmm); SR(rdst); DR(rdst); F_OSZC;
4474 switch (op[1] & 0x00)
4477 goto op_semantics_29;
4483 switch (op[1] & 0x00)
4487 /** 0110 1110 dsta dstb pushm %1-%2 */
4488 #line 368 "rx-decode.opc"
4489 int dsta AU = (op[1] >> 4) & 0x0f;
4490 #line 368 "rx-decode.opc"
4491 int dstb AU = op[1] & 0x0f;
4494 printf ("\033[33m%s\033[0m %02x %02x\n",
4495 "/** 0110 1110 dsta dstb pushm %1-%2 */",
4497 printf (" dsta = 0x%x,", dsta);
4498 printf (" dstb = 0x%x\n", dstb);
4500 SYNTAX("pushm %1-%2");
4501 #line 368 "rx-decode.opc"
4502 ID(pushm); SR(dsta); S2R(dstb); F_____;
4510 switch (op[1] & 0x00)
4514 /** 0110 1111 dsta dstb popm %1-%2 */
4515 #line 365 "rx-decode.opc"
4516 int dsta AU = (op[1] >> 4) & 0x0f;
4517 #line 365 "rx-decode.opc"
4518 int dstb AU = op[1] & 0x0f;
4521 printf ("\033[33m%s\033[0m %02x %02x\n",
4522 "/** 0110 1111 dsta dstb popm %1-%2 */",
4524 printf (" dsta = 0x%x,", dsta);
4525 printf (" dstb = 0x%x\n", dstb);
4527 SYNTAX("popm %1-%2");
4528 #line 365 "rx-decode.opc"
4529 ID(popm); SR(dsta); S2R(dstb); F_____;
4537 switch (op[1] & 0x00)
4542 /** 0111 00im rsrc rdst add #%1, %2, %0 */
4543 #line 509 "rx-decode.opc"
4544 int im AU = op[0] & 0x03;
4545 #line 509 "rx-decode.opc"
4546 int rsrc AU = (op[1] >> 4) & 0x0f;
4547 #line 509 "rx-decode.opc"
4548 int rdst AU = op[1] & 0x0f;
4551 printf ("\033[33m%s\033[0m %02x %02x\n",
4552 "/** 0111 00im rsrc rdst add #%1, %2, %0 */",
4554 printf (" im = 0x%x,", im);
4555 printf (" rsrc = 0x%x,", rsrc);
4556 printf (" rdst = 0x%x\n", rdst);
4558 SYNTAX("add #%1, %2, %0");
4559 #line 509 "rx-decode.opc"
4560 ID(add); SC(IMMex(im)); S2R(rsrc); DR(rdst); F_OSZC;
4568 switch (op[1] & 0x00)
4571 goto op_semantics_30;
4577 switch (op[1] & 0x00)
4580 goto op_semantics_30;
4586 switch (op[1] & 0x00)
4589 goto op_semantics_30;
4595 switch (op[1] & 0xf0)
4600 /** 0111 01im 0000 rsrc cmp #%2, %1%S1 */
4601 #line 521 "rx-decode.opc"
4602 int im AU = op[0] & 0x03;
4603 #line 521 "rx-decode.opc"
4604 int rsrc AU = op[1] & 0x0f;
4607 printf ("\033[33m%s\033[0m %02x %02x\n",
4608 "/** 0111 01im 0000 rsrc cmp #%2, %1%S1 */",
4610 printf (" im = 0x%x,", im);
4611 printf (" rsrc = 0x%x\n", rsrc);
4613 SYNTAX("cmp #%2, %1%S1");
4614 #line 521 "rx-decode.opc"
4615 ID(sub); SR(rsrc); S2C(IMMex(im)); F_OSZC;
4622 /** 0111 01im 0001rdst mul #%1, %0 */
4623 #line 605 "rx-decode.opc"
4624 int im AU = op[0] & 0x03;
4625 #line 605 "rx-decode.opc"
4626 int rdst AU = op[1] & 0x0f;
4629 printf ("\033[33m%s\033[0m %02x %02x\n",
4630 "/** 0111 01im 0001rdst mul #%1, %0 */",
4632 printf (" im = 0x%x,", im);
4633 printf (" rdst = 0x%x\n", rdst);
4635 SYNTAX("mul #%1, %0");
4636 #line 605 "rx-decode.opc"
4637 ID(mul); DR(rdst); SC(IMMex(im)); F_____;
4644 /** 0111 01im 0010 rdst and #%1, %0 */
4645 #line 413 "rx-decode.opc"
4646 int im AU = op[0] & 0x03;
4647 #line 413 "rx-decode.opc"
4648 int rdst AU = op[1] & 0x0f;
4651 printf ("\033[33m%s\033[0m %02x %02x\n",
4652 "/** 0111 01im 0010 rdst and #%1, %0 */",
4654 printf (" im = 0x%x,", im);
4655 printf (" rdst = 0x%x\n", rdst);
4657 SYNTAX("and #%1, %0");
4658 #line 413 "rx-decode.opc"
4659 ID(and); SC(IMMex(im)); DR(rdst); F__SZ_;
4666 /** 0111 01im 0011 rdst or #%1, %0 */
4667 #line 431 "rx-decode.opc"
4668 int im AU = op[0] & 0x03;
4669 #line 431 "rx-decode.opc"
4670 int rdst AU = op[1] & 0x0f;
4673 printf ("\033[33m%s\033[0m %02x %02x\n",
4674 "/** 0111 01im 0011 rdst or #%1, %0 */",
4676 printf (" im = 0x%x,", im);
4677 printf (" rdst = 0x%x\n", rdst);
4679 SYNTAX("or #%1, %0");
4680 #line 431 "rx-decode.opc"
4681 ID(or); SC(IMMex(im)); DR(rdst); F__SZ_;
4685 default: UNSUPPORTED(); break;
4690 switch (op[1] & 0xff)
4708 goto op_semantics_31;
4726 goto op_semantics_32;
4744 goto op_semantics_33;
4762 goto op_semantics_34;
4781 /** 0111 0101 0100 rdst mov%s #%1, %0 */
4782 #line 285 "rx-decode.opc"
4783 int rdst AU = op[1] & 0x0f;
4786 printf ("\033[33m%s\033[0m %02x %02x\n",
4787 "/** 0111 0101 0100 rdst mov%s #%1, %0 */",
4789 printf (" rdst = 0x%x\n", rdst);
4791 SYNTAX("mov%s #%1, %0");
4792 #line 285 "rx-decode.opc"
4793 ID(mov); DR(rdst); SC(IMM (1)); F_____;
4814 /** 0111 0101 0101 rsrc cmp #%2, %1 */
4815 #line 524 "rx-decode.opc"
4816 int rsrc AU = op[1] & 0x0f;
4819 printf ("\033[33m%s\033[0m %02x %02x\n",
4820 "/** 0111 0101 0101 rsrc cmp #%2, %1 */",
4822 printf (" rsrc = 0x%x\n", rsrc);
4824 SYNTAX("cmp #%2, %1");
4825 #line 524 "rx-decode.opc"
4826 ID(sub); SR(rsrc); S2C(IMM(1)); F_OSZC;
4832 /** 0111 0101 0110 0000 int #%1 */
4835 printf ("\033[33m%s\033[0m %02x %02x\n",
4836 "/** 0111 0101 0110 0000 int #%1 */",
4840 #line 993 "rx-decode.opc"
4841 ID(int); SC(IMM(1));
4847 switch (op[2] & 0xf0)
4851 /** 0111 0101 0111 0000 0000 immm mvtipl #%1 */
4852 #line 960 "rx-decode.opc"
4853 int immm AU = op[2] & 0x0f;
4856 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
4857 "/** 0111 0101 0111 0000 0000 immm mvtipl #%1 */",
4858 op[0], op[1], op[2]);
4859 printf (" immm = 0x%x\n", immm);
4861 SYNTAX("mvtipl #%1");
4862 #line 960 "rx-decode.opc"
4863 ID(mvtipl); SC(immm);
4867 default: UNSUPPORTED(); break;
4870 default: UNSUPPORTED(); break;
4875 switch (op[1] & 0xf0)
4878 goto op_semantics_31;
4881 goto op_semantics_32;
4884 goto op_semantics_33;
4887 goto op_semantics_34;
4889 default: UNSUPPORTED(); break;
4894 switch (op[1] & 0xf0)
4897 goto op_semantics_31;
4900 goto op_semantics_32;
4903 goto op_semantics_33;
4906 goto op_semantics_34;
4908 default: UNSUPPORTED(); break;
4913 switch (op[1] & 0x00)
4918 /** 0111 100b ittt rdst bset #%1, %0 */
4919 #line 905 "rx-decode.opc"
4920 int b AU = op[0] & 0x01;
4921 #line 905 "rx-decode.opc"
4922 int ittt AU = (op[1] >> 4) & 0x0f;
4923 #line 905 "rx-decode.opc"
4924 int rdst AU = op[1] & 0x0f;
4927 printf ("\033[33m%s\033[0m %02x %02x\n",
4928 "/** 0111 100b ittt rdst bset #%1, %0 */",
4930 printf (" b = 0x%x,", b);
4931 printf (" ittt = 0x%x,", ittt);
4932 printf (" rdst = 0x%x\n", rdst);
4934 SYNTAX("bset #%1, %0");
4935 #line 905 "rx-decode.opc"
4936 ID(bset); BWL(LSIZE); SC(b*16+ittt); DR(rdst); F_____;
4945 switch (op[1] & 0x00)
4948 goto op_semantics_35;
4954 switch (op[1] & 0x00)
4959 /** 0111 101b ittt rdst bclr #%1, %0 */
4960 #line 917 "rx-decode.opc"
4961 int b AU = op[0] & 0x01;
4962 #line 917 "rx-decode.opc"
4963 int ittt AU = (op[1] >> 4) & 0x0f;
4964 #line 917 "rx-decode.opc"
4965 int rdst AU = op[1] & 0x0f;
4968 printf ("\033[33m%s\033[0m %02x %02x\n",
4969 "/** 0111 101b ittt rdst bclr #%1, %0 */",
4971 printf (" b = 0x%x,", b);
4972 printf (" ittt = 0x%x,", ittt);
4973 printf (" rdst = 0x%x\n", rdst);
4975 SYNTAX("bclr #%1, %0");
4976 #line 917 "rx-decode.opc"
4977 ID(bclr); BWL(LSIZE); SC(b*16+ittt); DR(rdst); F_____;
4986 switch (op[1] & 0x00)
4989 goto op_semantics_36;
4995 switch (op[1] & 0x00)
5000 /** 0111 110b ittt rdst btst #%2, %1 */
5001 #line 929 "rx-decode.opc"
5002 int b AU = op[0] & 0x01;
5003 #line 929 "rx-decode.opc"
5004 int ittt AU = (op[1] >> 4) & 0x0f;
5005 #line 929 "rx-decode.opc"
5006 int rdst AU = op[1] & 0x0f;
5009 printf ("\033[33m%s\033[0m %02x %02x\n",
5010 "/** 0111 110b ittt rdst btst #%2, %1 */",
5012 printf (" b = 0x%x,", b);
5013 printf (" ittt = 0x%x,", ittt);
5014 printf (" rdst = 0x%x\n", rdst);
5016 SYNTAX("btst #%2, %1");
5017 #line 929 "rx-decode.opc"
5018 ID(btst); BWL(LSIZE); S2C(b*16+ittt); SR(rdst); F___ZC;
5027 switch (op[1] & 0x00)
5030 goto op_semantics_37;
5036 switch (op[1] & 0xf0)
5040 /** 0111 1110 0000 rdst not %0 */
5041 #line 458 "rx-decode.opc"
5042 int rdst AU = op[1] & 0x0f;
5045 printf ("\033[33m%s\033[0m %02x %02x\n",
5046 "/** 0111 1110 0000 rdst not %0 */",
5048 printf (" rdst = 0x%x\n", rdst);
5051 #line 458 "rx-decode.opc"
5052 ID(xor); DR(rdst); SR(rdst); S2C(~0); F__SZ_;
5058 /** 0111 1110 0001 rdst neg %0 */
5059 #line 479 "rx-decode.opc"
5060 int rdst AU = op[1] & 0x0f;
5063 printf ("\033[33m%s\033[0m %02x %02x\n",
5064 "/** 0111 1110 0001 rdst neg %0 */",
5066 printf (" rdst = 0x%x\n", rdst);
5069 #line 479 "rx-decode.opc"
5070 ID(sub); DR(rdst); SC(0); S2R(rdst); F_OSZC;
5076 /** 0111 1110 0010 rdst abs %0 */
5077 #line 561 "rx-decode.opc"
5078 int rdst AU = op[1] & 0x0f;
5081 printf ("\033[33m%s\033[0m %02x %02x\n",
5082 "/** 0111 1110 0010 rdst abs %0 */",
5084 printf (" rdst = 0x%x\n", rdst);
5087 #line 561 "rx-decode.opc"
5088 ID(abs); DR(rdst); SR(rdst); F_OSZ_;
5094 /** 0111 1110 0011 rdst sat %0 */
5095 #line 843 "rx-decode.opc"
5096 int rdst AU = op[1] & 0x0f;
5099 printf ("\033[33m%s\033[0m %02x %02x\n",
5100 "/** 0111 1110 0011 rdst sat %0 */",
5102 printf (" rdst = 0x%x\n", rdst);
5105 #line 843 "rx-decode.opc"
5112 /** 0111 1110 0100 rdst rorc %0 */
5113 #line 703 "rx-decode.opc"
5114 int rdst AU = op[1] & 0x0f;
5117 printf ("\033[33m%s\033[0m %02x %02x\n",
5118 "/** 0111 1110 0100 rdst rorc %0 */",
5120 printf (" rdst = 0x%x\n", rdst);
5123 #line 703 "rx-decode.opc"
5124 ID(rorc); DR(rdst); F__SZC;
5130 /** 0111 1110 0101 rdst rolc %0 */
5131 #line 700 "rx-decode.opc"
5132 int rdst AU = op[1] & 0x0f;
5135 printf ("\033[33m%s\033[0m %02x %02x\n",
5136 "/** 0111 1110 0101 rdst rolc %0 */",
5138 printf (" rdst = 0x%x\n", rdst);
5141 #line 700 "rx-decode.opc"
5142 ID(rolc); DR(rdst); F__SZC;
5150 /** 0111 1110 10sz rsrc push%s %1 */
5151 #line 374 "rx-decode.opc"
5152 int sz AU = (op[1] >> 4) & 0x03;
5153 #line 374 "rx-decode.opc"
5154 int rsrc AU = op[1] & 0x0f;
5157 printf ("\033[33m%s\033[0m %02x %02x\n",
5158 "/** 0111 1110 10sz rsrc push%s %1 */",
5160 printf (" sz = 0x%x,", sz);
5161 printf (" rsrc = 0x%x\n", rsrc);
5163 SYNTAX("push%s %1");
5164 #line 374 "rx-decode.opc"
5165 ID(mov); BWL(sz); OP(0, RX_Operand_Predec, 0, 0); SR(rsrc); F_____;
5171 /** 0111 1110 1011 rdst pop %0 */
5172 #line 371 "rx-decode.opc"
5173 int rdst AU = op[1] & 0x0f;
5176 printf ("\033[33m%s\033[0m %02x %02x\n",
5177 "/** 0111 1110 1011 rdst pop %0 */",
5179 printf (" rdst = 0x%x\n", rdst);
5182 #line 371 "rx-decode.opc"
5183 ID(mov); OP(1, RX_Operand_Postinc, 0, 0); DR(rdst); F_____;
5190 /** 0111 1110 110 crsrc pushc %1 */
5191 #line 966 "rx-decode.opc"
5192 int crsrc AU = op[1] & 0x1f;
5195 printf ("\033[33m%s\033[0m %02x %02x\n",
5196 "/** 0111 1110 110 crsrc pushc %1 */",
5198 printf (" crsrc = 0x%x\n", crsrc);
5201 #line 966 "rx-decode.opc"
5202 ID(mov); OP(0, RX_Operand_Predec, 0, 0); SR(crsrc + 16);
5209 /** 0111 1110 111 crdst popc %0 */
5210 #line 963 "rx-decode.opc"
5211 int crdst AU = op[1] & 0x1f;
5214 printf ("\033[33m%s\033[0m %02x %02x\n",
5215 "/** 0111 1110 111 crdst popc %0 */",
5217 printf (" crdst = 0x%x\n", crdst);
5220 #line 963 "rx-decode.opc"
5221 ID(mov); OP(1, RX_Operand_Postinc, 0, 0); DR(crdst + 16);
5225 default: UNSUPPORTED(); break;
5230 switch (op[1] & 0xff)
5249 /** 0111 1111 0000 rsrc jmp %0 */
5250 #line 753 "rx-decode.opc"
5251 int rsrc AU = op[1] & 0x0f;
5254 printf ("\033[33m%s\033[0m %02x %02x\n",
5255 "/** 0111 1111 0000 rsrc jmp %0 */",
5257 printf (" rsrc = 0x%x\n", rsrc);
5260 #line 753 "rx-decode.opc"
5261 ID(branch); DR(rsrc);
5282 /** 0111 1111 0001 rsrc jsr %0 */
5283 #line 756 "rx-decode.opc"
5284 int rsrc AU = op[1] & 0x0f;
5287 printf ("\033[33m%s\033[0m %02x %02x\n",
5288 "/** 0111 1111 0001 rsrc jsr %0 */",
5290 printf (" rsrc = 0x%x\n", rsrc);
5293 #line 756 "rx-decode.opc"
5315 /** 0111 1111 0100 rsrc bra.l %0 */
5316 #line 749 "rx-decode.opc"
5317 int rsrc AU = op[1] & 0x0f;
5320 printf ("\033[33m%s\033[0m %02x %02x\n",
5321 "/** 0111 1111 0100 rsrc bra.l %0 */",
5323 printf (" rsrc = 0x%x\n", rsrc);
5326 #line 749 "rx-decode.opc"
5327 ID(branchrel); DR(rsrc);
5349 /** 0111 1111 0101 rsrc bsr.l %0 */
5350 #line 765 "rx-decode.opc"
5351 int rsrc AU = op[1] & 0x0f;
5354 printf ("\033[33m%s\033[0m %02x %02x\n",
5355 "/** 0111 1111 0101 rsrc bsr.l %0 */",
5357 printf (" rsrc = 0x%x\n", rsrc);
5360 #line 765 "rx-decode.opc"
5361 ID(jsrrel); DR(rsrc);
5369 /** 0111 1111 1000 00sz suntil%s */
5370 #line 789 "rx-decode.opc"
5371 int sz AU = op[1] & 0x03;
5374 printf ("\033[33m%s\033[0m %02x %02x\n",
5375 "/** 0111 1111 1000 00sz suntil%s */",
5377 printf (" sz = 0x%x\n", sz);
5380 #line 789 "rx-decode.opc"
5381 ID(suntil); BWL(sz); F___ZC;
5387 /** 0111 1111 1000 0011 scmpu */
5390 printf ("\033[33m%s\033[0m %02x %02x\n",
5391 "/** 0111 1111 1000 0011 scmpu */",
5395 #line 780 "rx-decode.opc"
5404 /** 0111 1111 1000 01sz swhile%s */
5405 #line 792 "rx-decode.opc"
5406 int sz AU = op[1] & 0x03;
5409 printf ("\033[33m%s\033[0m %02x %02x\n",
5410 "/** 0111 1111 1000 01sz swhile%s */",
5412 printf (" sz = 0x%x\n", sz);
5415 #line 792 "rx-decode.opc"
5416 ID(swhile); BWL(sz); F___ZC;
5422 /** 0111 1111 1000 0111 smovu */
5425 printf ("\033[33m%s\033[0m %02x %02x\n",
5426 "/** 0111 1111 1000 0111 smovu */",
5430 #line 783 "rx-decode.opc"
5439 /** 0111 1111 1000 10sz sstr%s */
5440 #line 798 "rx-decode.opc"
5441 int sz AU = op[1] & 0x03;
5444 printf ("\033[33m%s\033[0m %02x %02x\n",
5445 "/** 0111 1111 1000 10sz sstr%s */",
5447 printf (" sz = 0x%x\n", sz);
5450 #line 798 "rx-decode.opc"
5453 /*----------------------------------------------------------------------*/
5460 /** 0111 1111 1000 1011 smovb */
5463 printf ("\033[33m%s\033[0m %02x %02x\n",
5464 "/** 0111 1111 1000 1011 smovb */",
5468 #line 786 "rx-decode.opc"
5477 /** 0111 1111 1000 11sz rmpa%s */
5478 #line 804 "rx-decode.opc"
5479 int sz AU = op[1] & 0x03;
5482 printf ("\033[33m%s\033[0m %02x %02x\n",
5483 "/** 0111 1111 1000 11sz rmpa%s */",
5485 printf (" sz = 0x%x\n", sz);
5488 #line 804 "rx-decode.opc"
5489 ID(rmpa); BWL(sz); F_OS__;
5491 /*----------------------------------------------------------------------*/
5498 /** 0111 1111 1000 1111 smovf */
5501 printf ("\033[33m%s\033[0m %02x %02x\n",
5502 "/** 0111 1111 1000 1111 smovf */",
5506 #line 795 "rx-decode.opc"
5513 /** 0111 1111 1001 0011 satr */
5516 printf ("\033[33m%s\033[0m %02x %02x\n",
5517 "/** 0111 1111 1001 0011 satr */",
5521 #line 846 "rx-decode.opc"
5524 /*----------------------------------------------------------------------*/
5531 /** 0111 1111 1001 0100 rtfi */
5534 printf ("\033[33m%s\033[0m %02x %02x\n",
5535 "/** 0111 1111 1001 0100 rtfi */",
5539 #line 981 "rx-decode.opc"
5546 /** 0111 1111 1001 0101 rte */
5549 printf ("\033[33m%s\033[0m %02x %02x\n",
5550 "/** 0111 1111 1001 0101 rte */",
5554 #line 984 "rx-decode.opc"
5561 /** 0111 1111 1001 0110 wait */
5564 printf ("\033[33m%s\033[0m %02x %02x\n",
5565 "/** 0111 1111 1001 0110 wait */",
5569 #line 996 "rx-decode.opc"
5572 /*----------------------------------------------------------------------*/
5594 /** 0111 1111 1010 rdst setpsw %0 */
5595 #line 957 "rx-decode.opc"
5596 int rdst AU = op[1] & 0x0f;
5599 printf ("\033[33m%s\033[0m %02x %02x\n",
5600 "/** 0111 1111 1010 rdst setpsw %0 */",
5602 printf (" rdst = 0x%x\n", rdst);
5604 SYNTAX("setpsw %0");
5605 #line 957 "rx-decode.opc"
5606 ID(setpsw); DF(rdst);
5627 /** 0111 1111 1011 rdst clrpsw %0 */
5628 #line 954 "rx-decode.opc"
5629 int rdst AU = op[1] & 0x0f;
5632 printf ("\033[33m%s\033[0m %02x %02x\n",
5633 "/** 0111 1111 1011 rdst clrpsw %0 */",
5635 printf (" rdst = 0x%x\n", rdst);
5637 SYNTAX("clrpsw %0");
5638 #line 954 "rx-decode.opc"
5639 ID(clrpsw); DF(rdst);
5643 default: UNSUPPORTED(); break;
5648 switch (op[1] & 0x00)
5653 /** 10sz 0dsp a dst b src mov%s %1, %0 */
5654 #line 332 "rx-decode.opc"
5655 int sz AU = (op[0] >> 4) & 0x03;
5656 #line 332 "rx-decode.opc"
5657 int dsp AU = op[0] & 0x07;
5658 #line 332 "rx-decode.opc"
5659 int a AU = (op[1] >> 7) & 0x01;
5660 #line 332 "rx-decode.opc"
5661 int dst AU = (op[1] >> 4) & 0x07;
5662 #line 332 "rx-decode.opc"
5663 int b AU = (op[1] >> 3) & 0x01;
5664 #line 332 "rx-decode.opc"
5665 int src AU = op[1] & 0x07;
5668 printf ("\033[33m%s\033[0m %02x %02x\n",
5669 "/** 10sz 0dsp a dst b src mov%s %1, %0 */",
5671 printf (" sz = 0x%x,", sz);
5672 printf (" dsp = 0x%x,", dsp);
5673 printf (" a = 0x%x,", a);
5674 printf (" dst = 0x%x,", dst);
5675 printf (" b = 0x%x,", b);
5676 printf (" src = 0x%x\n", src);
5678 SYNTAX("mov%s %1, %0");
5679 #line 332 "rx-decode.opc"
5680 ID(mov); sBWL(sz); DIs(dst, dsp*4+a*2+b, sz); SR(src); F_____;
5688 switch (op[1] & 0x00)
5691 goto op_semantics_38;
5697 switch (op[1] & 0x00)
5700 goto op_semantics_38;
5706 switch (op[1] & 0x00)
5709 goto op_semantics_38;
5715 switch (op[1] & 0x00)
5718 goto op_semantics_38;
5724 switch (op[1] & 0x00)
5727 goto op_semantics_38;
5733 switch (op[1] & 0x00)
5736 goto op_semantics_38;
5742 switch (op[1] & 0x00)
5745 goto op_semantics_38;
5751 switch (op[1] & 0x00)
5756 /** 10sz 1dsp a src b dst mov%s %1, %0 */
5757 #line 329 "rx-decode.opc"
5758 int sz AU = (op[0] >> 4) & 0x03;
5759 #line 329 "rx-decode.opc"
5760 int dsp AU = op[0] & 0x07;
5761 #line 329 "rx-decode.opc"
5762 int a AU = (op[1] >> 7) & 0x01;
5763 #line 329 "rx-decode.opc"
5764 int src AU = (op[1] >> 4) & 0x07;
5765 #line 329 "rx-decode.opc"
5766 int b AU = (op[1] >> 3) & 0x01;
5767 #line 329 "rx-decode.opc"
5768 int dst AU = op[1] & 0x07;
5771 printf ("\033[33m%s\033[0m %02x %02x\n",
5772 "/** 10sz 1dsp a src b dst mov%s %1, %0 */",
5774 printf (" sz = 0x%x,", sz);
5775 printf (" dsp = 0x%x,", dsp);
5776 printf (" a = 0x%x,", a);
5777 printf (" src = 0x%x,", src);
5778 printf (" b = 0x%x,", b);
5779 printf (" dst = 0x%x\n", dst);
5781 SYNTAX("mov%s %1, %0");
5782 #line 329 "rx-decode.opc"
5783 ID(mov); sBWL(sz); DR(dst); SIs(src, dsp*4+a*2+b, sz); F_____;
5791 switch (op[1] & 0x00)
5794 goto op_semantics_39;
5800 switch (op[1] & 0x00)
5803 goto op_semantics_39;
5809 switch (op[1] & 0x00)
5812 goto op_semantics_39;
5818 switch (op[1] & 0x00)
5821 goto op_semantics_39;
5827 switch (op[1] & 0x00)
5830 goto op_semantics_39;
5836 switch (op[1] & 0x00)
5839 goto op_semantics_39;
5845 switch (op[1] & 0x00)
5848 goto op_semantics_39;
5854 switch (op[1] & 0x00)
5857 goto op_semantics_38;
5863 switch (op[1] & 0x00)
5866 goto op_semantics_38;
5872 switch (op[1] & 0x00)
5875 goto op_semantics_38;
5881 switch (op[1] & 0x00)
5884 goto op_semantics_38;
5890 switch (op[1] & 0x00)
5893 goto op_semantics_38;
5899 switch (op[1] & 0x00)
5902 goto op_semantics_38;
5908 switch (op[1] & 0x00)
5911 goto op_semantics_38;
5917 switch (op[1] & 0x00)
5920 goto op_semantics_38;
5926 switch (op[1] & 0x00)
5929 goto op_semantics_39;
5935 switch (op[1] & 0x00)
5938 goto op_semantics_39;
5944 switch (op[1] & 0x00)
5947 goto op_semantics_39;
5953 switch (op[1] & 0x00)
5956 goto op_semantics_39;
5962 switch (op[1] & 0x00)
5965 goto op_semantics_39;
5971 switch (op[1] & 0x00)
5974 goto op_semantics_39;
5980 switch (op[1] & 0x00)
5983 goto op_semantics_39;
5989 switch (op[1] & 0x00)
5992 goto op_semantics_39;
5998 switch (op[1] & 0x00)
6001 goto op_semantics_38;
6007 switch (op[1] & 0x00)
6010 goto op_semantics_38;
6016 switch (op[1] & 0x00)
6019 goto op_semantics_38;
6025 switch (op[1] & 0x00)
6028 goto op_semantics_38;
6034 switch (op[1] & 0x00)
6037 goto op_semantics_38;
6043 switch (op[1] & 0x00)
6046 goto op_semantics_38;
6052 switch (op[1] & 0x00)
6055 goto op_semantics_38;
6061 switch (op[1] & 0x00)
6064 goto op_semantics_38;
6070 switch (op[1] & 0x00)
6073 goto op_semantics_39;
6079 switch (op[1] & 0x00)
6082 goto op_semantics_39;
6088 switch (op[1] & 0x00)
6091 goto op_semantics_39;
6097 switch (op[1] & 0x00)
6100 goto op_semantics_39;
6106 switch (op[1] & 0x00)
6109 goto op_semantics_39;
6115 switch (op[1] & 0x00)
6118 goto op_semantics_39;
6124 switch (op[1] & 0x00)
6127 goto op_semantics_39;
6133 switch (op[1] & 0x00)
6136 goto op_semantics_39;
6142 switch (op[1] & 0x00)
6147 /** 1011 w dsp a src b dst movu%s %1, %0 */
6148 #line 352 "rx-decode.opc"
6149 int w AU = (op[0] >> 3) & 0x01;
6150 #line 352 "rx-decode.opc"
6151 int dsp AU = op[0] & 0x07;
6152 #line 352 "rx-decode.opc"
6153 int a AU = (op[1] >> 7) & 0x01;
6154 #line 352 "rx-decode.opc"
6155 int src AU = (op[1] >> 4) & 0x07;
6156 #line 352 "rx-decode.opc"
6157 int b AU = (op[1] >> 3) & 0x01;
6158 #line 352 "rx-decode.opc"
6159 int dst AU = op[1] & 0x07;
6162 printf ("\033[33m%s\033[0m %02x %02x\n",
6163 "/** 1011 w dsp a src b dst movu%s %1, %0 */",
6165 printf (" w = 0x%x,", w);
6166 printf (" dsp = 0x%x,", dsp);
6167 printf (" a = 0x%x,", a);
6168 printf (" src = 0x%x,", src);
6169 printf (" b = 0x%x,", b);
6170 printf (" dst = 0x%x\n", dst);
6172 SYNTAX("movu%s %1, %0");
6173 #line 352 "rx-decode.opc"
6174 ID(mov); uBWL(w); DR(dst); SIs(src, dsp*4+a*2+b, w); F_____;
6182 switch (op[1] & 0x00)
6185 goto op_semantics_40;
6191 switch (op[1] & 0x00)
6194 goto op_semantics_40;
6200 switch (op[1] & 0x00)
6203 goto op_semantics_40;
6209 switch (op[1] & 0x00)
6212 goto op_semantics_40;
6218 switch (op[1] & 0x00)
6221 goto op_semantics_40;
6227 switch (op[1] & 0x00)
6230 goto op_semantics_40;
6236 switch (op[1] & 0x00)
6239 goto op_semantics_40;
6245 switch (op[1] & 0x00)
6248 goto op_semantics_40;
6254 switch (op[1] & 0x00)
6257 goto op_semantics_40;
6263 switch (op[1] & 0x00)
6266 goto op_semantics_40;
6272 switch (op[1] & 0x00)
6275 goto op_semantics_40;
6281 switch (op[1] & 0x00)
6284 goto op_semantics_40;
6290 switch (op[1] & 0x00)
6293 goto op_semantics_40;
6299 switch (op[1] & 0x00)
6302 goto op_semantics_40;
6308 switch (op[1] & 0x00)
6311 goto op_semantics_40;
6317 switch (op[1] & 0x00)
6322 /** 11sz sd ss rsrc rdst mov%s %1, %0 */
6323 #line 310 "rx-decode.opc"
6324 int sz AU = (op[0] >> 4) & 0x03;
6325 #line 310 "rx-decode.opc"
6326 int sd AU = (op[0] >> 2) & 0x03;
6327 #line 310 "rx-decode.opc"
6328 int ss AU = op[0] & 0x03;
6329 #line 310 "rx-decode.opc"
6330 int rsrc AU = (op[1] >> 4) & 0x0f;
6331 #line 310 "rx-decode.opc"
6332 int rdst AU = op[1] & 0x0f;
6335 printf ("\033[33m%s\033[0m %02x %02x\n",
6336 "/** 11sz sd ss rsrc rdst mov%s %1, %0 */",
6338 printf (" sz = 0x%x,", sz);
6339 printf (" sd = 0x%x,", sd);
6340 printf (" ss = 0x%x,", ss);
6341 printf (" rsrc = 0x%x,", rsrc);
6342 printf (" rdst = 0x%x\n", rdst);
6344 SYNTAX("mov%s %1, %0");
6345 #line 310 "rx-decode.opc"
6346 if (sd == 3 && ss == 3 && sz == 2 && rsrc == 0 && rdst == 0)
6353 ID(mov); sBWL(sz); F_____;
6354 if ((ss == 3) && (sd != 3))
6356 SD(ss, rdst, sz); DD(sd, rsrc, sz);
6360 SD(ss, rsrc, sz); DD(sd, rdst, sz);
6370 switch (op[1] & 0x00)
6373 goto op_semantics_41;
6379 switch (op[1] & 0x00)
6382 goto op_semantics_41;
6388 switch (op[1] & 0x00)
6391 goto op_semantics_41;
6397 switch (op[1] & 0x00)
6400 goto op_semantics_41;
6406 switch (op[1] & 0x00)
6409 goto op_semantics_41;
6415 switch (op[1] & 0x00)
6418 goto op_semantics_41;
6424 switch (op[1] & 0x00)
6427 goto op_semantics_41;
6433 switch (op[1] & 0x00)
6436 goto op_semantics_41;
6442 switch (op[1] & 0x00)
6445 goto op_semantics_41;
6451 switch (op[1] & 0x00)
6454 goto op_semantics_41;
6460 switch (op[1] & 0x00)
6463 goto op_semantics_41;
6469 switch (op[1] & 0x00)
6472 goto op_semantics_41;
6478 switch (op[1] & 0x00)
6481 goto op_semantics_41;
6487 switch (op[1] & 0x00)
6490 goto op_semantics_41;
6496 switch (op[1] & 0x00)
6499 goto op_semantics_41;
6505 switch (op[1] & 0x00)
6508 goto op_semantics_41;
6514 switch (op[1] & 0x00)
6517 goto op_semantics_41;
6523 switch (op[1] & 0x00)
6526 goto op_semantics_41;
6532 switch (op[1] & 0x00)
6535 goto op_semantics_41;
6541 switch (op[1] & 0x00)
6544 goto op_semantics_41;
6550 switch (op[1] & 0x00)
6553 goto op_semantics_41;
6559 switch (op[1] & 0x00)
6562 goto op_semantics_41;
6568 switch (op[1] & 0x00)
6571 goto op_semantics_41;
6577 switch (op[1] & 0x00)
6580 goto op_semantics_41;
6586 switch (op[1] & 0x00)
6589 goto op_semantics_41;
6595 switch (op[1] & 0x00)
6598 goto op_semantics_41;
6604 switch (op[1] & 0x00)
6607 goto op_semantics_41;
6613 switch (op[1] & 0x00)
6616 goto op_semantics_41;
6622 switch (op[1] & 0x00)
6625 goto op_semantics_41;
6631 switch (op[1] & 0x00)
6634 goto op_semantics_41;
6640 switch (op[1] & 0x00)
6643 goto op_semantics_41;
6649 switch (op[1] & 0x00)
6652 goto op_semantics_41;
6658 switch (op[1] & 0x00)
6661 goto op_semantics_41;
6667 switch (op[1] & 0x00)
6670 goto op_semantics_41;
6676 switch (op[1] & 0x00)
6679 goto op_semantics_41;
6685 switch (op[1] & 0x00)
6688 goto op_semantics_41;
6694 switch (op[1] & 0x00)
6697 goto op_semantics_41;
6703 switch (op[1] & 0x00)
6706 goto op_semantics_41;
6712 switch (op[1] & 0x00)
6715 goto op_semantics_41;
6721 switch (op[1] & 0x00)
6724 goto op_semantics_41;
6730 switch (op[1] & 0x00)
6733 goto op_semantics_41;
6739 switch (op[1] & 0x00)
6742 goto op_semantics_41;
6748 switch (op[1] & 0x00)
6751 goto op_semantics_41;
6757 switch (op[1] & 0x00)
6760 goto op_semantics_41;
6766 switch (op[1] & 0x00)
6769 goto op_semantics_41;
6775 switch (op[1] & 0x00)
6778 goto op_semantics_41;
6784 switch (op[1] & 0x00)
6787 goto op_semantics_41;
6793 switch (op[1] & 0x08)
6798 /** 1111 00sd rdst 0bit bset #%1, %0%S0 */
6799 #line 897 "rx-decode.opc"
6800 int sd AU = op[0] & 0x03;
6801 #line 897 "rx-decode.opc"
6802 int rdst AU = (op[1] >> 4) & 0x0f;
6803 #line 897 "rx-decode.opc"
6804 int bit AU = op[1] & 0x07;
6807 printf ("\033[33m%s\033[0m %02x %02x\n",
6808 "/** 1111 00sd rdst 0bit bset #%1, %0%S0 */",
6810 printf (" sd = 0x%x,", sd);
6811 printf (" rdst = 0x%x,", rdst);
6812 printf (" bit = 0x%x\n", bit);
6814 SYNTAX("bset #%1, %0%S0");
6815 #line 897 "rx-decode.opc"
6816 ID(bset); BWL(BSIZE); SC(bit); DD(sd, rdst, BSIZE); F_____;
6823 /** 1111 00sd rdst 1bit bclr #%1, %0%S0 */
6824 #line 909 "rx-decode.opc"
6825 int sd AU = op[0] & 0x03;
6826 #line 909 "rx-decode.opc"
6827 int rdst AU = (op[1] >> 4) & 0x0f;
6828 #line 909 "rx-decode.opc"
6829 int bit AU = op[1] & 0x07;
6832 printf ("\033[33m%s\033[0m %02x %02x\n",
6833 "/** 1111 00sd rdst 1bit bclr #%1, %0%S0 */",
6835 printf (" sd = 0x%x,", sd);
6836 printf (" rdst = 0x%x,", rdst);
6837 printf (" bit = 0x%x\n", bit);
6839 SYNTAX("bclr #%1, %0%S0");
6840 #line 909 "rx-decode.opc"
6841 ID(bclr); BWL(BSIZE); SC(bit); DD(sd, rdst, BSIZE); F_____;
6849 switch (op[1] & 0x08)
6852 goto op_semantics_42;
6855 goto op_semantics_43;
6861 switch (op[1] & 0x08)
6864 goto op_semantics_42;
6867 goto op_semantics_43;
6873 switch (op[1] & 0x08)
6876 goto op_semantics_42;
6879 goto op_semantics_43;
6885 switch (op[1] & 0x0c)
6891 /** 1111 01sd rdst 0bit btst #%2, %1%S1 */
6892 #line 921 "rx-decode.opc"
6893 int sd AU = op[0] & 0x03;
6894 #line 921 "rx-decode.opc"
6895 int rdst AU = (op[1] >> 4) & 0x0f;
6896 #line 921 "rx-decode.opc"
6897 int bit AU = op[1] & 0x07;
6900 printf ("\033[33m%s\033[0m %02x %02x\n",
6901 "/** 1111 01sd rdst 0bit btst #%2, %1%S1 */",
6903 printf (" sd = 0x%x,", sd);
6904 printf (" rdst = 0x%x,", rdst);
6905 printf (" bit = 0x%x\n", bit);
6907 SYNTAX("btst #%2, %1%S1");
6908 #line 921 "rx-decode.opc"
6909 ID(btst); BWL(BSIZE); S2C(bit); SD(sd, rdst, BSIZE); F___ZC;
6916 /** 1111 01ss rsrc 10sz push%s %1 */
6917 #line 377 "rx-decode.opc"
6918 int ss AU = op[0] & 0x03;
6919 #line 377 "rx-decode.opc"
6920 int rsrc AU = (op[1] >> 4) & 0x0f;
6921 #line 377 "rx-decode.opc"
6922 int sz AU = op[1] & 0x03;
6925 printf ("\033[33m%s\033[0m %02x %02x\n",
6926 "/** 1111 01ss rsrc 10sz push%s %1 */",
6928 printf (" ss = 0x%x,", ss);
6929 printf (" rsrc = 0x%x,", rsrc);
6930 printf (" sz = 0x%x\n", sz);
6932 SYNTAX("push%s %1");
6933 #line 377 "rx-decode.opc"
6934 ID(mov); BWL(sz); OP(0, RX_Operand_Predec, 0, 0); SD(ss, rsrc, sz); F_____;
6936 /*----------------------------------------------------------------------*/
6941 default: UNSUPPORTED(); break;
6946 switch (op[1] & 0x0c)
6950 goto op_semantics_44;
6953 goto op_semantics_45;
6955 default: UNSUPPORTED(); break;
6960 switch (op[1] & 0x0c)
6964 goto op_semantics_44;
6967 goto op_semantics_45;
6969 default: UNSUPPORTED(); break;
6974 switch (op[1] & 0x0c)
6978 goto op_semantics_44;
6981 goto op_semantics_45;
6983 default: UNSUPPORTED(); break;
6988 switch (op[1] & 0x00)
6993 /** 1111 10sd rdst im sz mov%s #%1, %0 */
6994 #line 288 "rx-decode.opc"
6995 int sd AU = op[0] & 0x03;
6996 #line 288 "rx-decode.opc"
6997 int rdst AU = (op[1] >> 4) & 0x0f;
6998 #line 288 "rx-decode.opc"
6999 int im AU = (op[1] >> 2) & 0x03;
7000 #line 288 "rx-decode.opc"
7001 int sz AU = op[1] & 0x03;
7004 printf ("\033[33m%s\033[0m %02x %02x\n",
7005 "/** 1111 10sd rdst im sz mov%s #%1, %0 */",
7007 printf (" sd = 0x%x,", sd);
7008 printf (" rdst = 0x%x,", rdst);
7009 printf (" im = 0x%x,", im);
7010 printf (" sz = 0x%x\n", sz);
7012 SYNTAX("mov%s #%1, %0");
7013 #line 288 "rx-decode.opc"
7014 ID(mov); DD(sd, rdst, sz);
7015 if ((im == 1 && sz == 0)
7016 || (im == 2 && sz == 1)
7017 || (im == 0 && sz == 2))
7035 switch (op[1] & 0x00)
7038 goto op_semantics_46;
7044 switch (op[1] & 0x00)
7047 goto op_semantics_46;
7053 switch (op[1] & 0x00)
7056 goto op_semantics_46;
7062 switch (op[1] & 0xff)
7066 switch (op[2] & 0x00)
7070 /** 1111 1100 0000 0011 rsrc rdst sbb %1, %0 */
7071 #line 551 "rx-decode.opc"
7072 int rsrc AU = (op[2] >> 4) & 0x0f;
7073 #line 551 "rx-decode.opc"
7074 int rdst AU = op[2] & 0x0f;
7077 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7078 "/** 1111 1100 0000 0011 rsrc rdst sbb %1, %0 */",
7079 op[0], op[1], op[2]);
7080 printf (" rsrc = 0x%x,", rsrc);
7081 printf (" rdst = 0x%x\n", rdst);
7083 SYNTAX("sbb %1, %0");
7084 #line 551 "rx-decode.opc"
7085 ID(sbb); SR (rsrc); DR(rdst); F_OSZC;
7087 /* FIXME: only supports .L */
7094 switch (op[2] & 0x00)
7098 /** 1111 1100 0000 0111 rsrc rdst neg %2, %0 */
7099 #line 482 "rx-decode.opc"
7100 int rsrc AU = (op[2] >> 4) & 0x0f;
7101 #line 482 "rx-decode.opc"
7102 int rdst AU = op[2] & 0x0f;
7105 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7106 "/** 1111 1100 0000 0111 rsrc rdst neg %2, %0 */",
7107 op[0], op[1], op[2]);
7108 printf (" rsrc = 0x%x,", rsrc);
7109 printf (" rdst = 0x%x\n", rdst);
7111 SYNTAX("neg %2, %0");
7112 #line 482 "rx-decode.opc"
7113 ID(sub); DR(rdst); SC(0); S2R(rsrc); F_OSZC;
7115 /*----------------------------------------------------------------------*/
7124 switch (op[2] & 0x00)
7128 /** 1111 1100 0000 1011 rsrc rdst adc %1, %0 */
7129 #line 491 "rx-decode.opc"
7130 int rsrc AU = (op[2] >> 4) & 0x0f;
7131 #line 491 "rx-decode.opc"
7132 int rdst AU = op[2] & 0x0f;
7135 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7136 "/** 1111 1100 0000 1011 rsrc rdst adc %1, %0 */",
7137 op[0], op[1], op[2]);
7138 printf (" rsrc = 0x%x,", rsrc);
7139 printf (" rdst = 0x%x\n", rdst);
7141 SYNTAX("adc %1, %0");
7142 #line 491 "rx-decode.opc"
7143 ID(adc); SR(rsrc); DR(rdst); F_OSZC;
7151 switch (op[2] & 0x00)
7155 /** 1111 1100 0000 1111 rsrc rdst abs %1, %0 */
7156 #line 564 "rx-decode.opc"
7157 int rsrc AU = (op[2] >> 4) & 0x0f;
7158 #line 564 "rx-decode.opc"
7159 int rdst AU = op[2] & 0x0f;
7162 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7163 "/** 1111 1100 0000 1111 rsrc rdst abs %1, %0 */",
7164 op[0], op[1], op[2]);
7165 printf (" rsrc = 0x%x,", rsrc);
7166 printf (" rdst = 0x%x\n", rdst);
7168 SYNTAX("abs %1, %0");
7169 #line 564 "rx-decode.opc"
7170 ID(abs); DR(rdst); SR(rsrc); F_OSZ_;
7172 /*----------------------------------------------------------------------*/
7181 switch (op[2] & 0x00)
7186 /** 1111 1100 0001 00ss rsrc rdst max %1%S1, %0 */
7187 #line 573 "rx-decode.opc"
7188 int ss AU = op[1] & 0x03;
7189 #line 573 "rx-decode.opc"
7190 int rsrc AU = (op[2] >> 4) & 0x0f;
7191 #line 573 "rx-decode.opc"
7192 int rdst AU = op[2] & 0x0f;
7195 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7196 "/** 1111 1100 0001 00ss rsrc rdst max %1%S1, %0 */",
7197 op[0], op[1], op[2]);
7198 printf (" ss = 0x%x,", ss);
7199 printf (" rsrc = 0x%x,", rsrc);
7200 printf (" rdst = 0x%x\n", rdst);
7202 SYNTAX("max %1%S1, %0");
7203 #line 573 "rx-decode.opc"
7204 if (ss == 3 && rsrc == 0 && rdst == 0)
7211 ID(max); SP(ss, rsrc); DR(rdst);
7220 switch (op[2] & 0x00)
7223 goto op_semantics_47;
7229 switch (op[2] & 0x00)
7232 goto op_semantics_47;
7238 switch (op[2] & 0x00)
7241 goto op_semantics_47;
7247 switch (op[2] & 0x00)
7252 /** 1111 1100 0001 01ss rsrc rdst min %1%S1, %0 */
7253 #line 593 "rx-decode.opc"
7254 int ss AU = op[1] & 0x03;
7255 #line 593 "rx-decode.opc"
7256 int rsrc AU = (op[2] >> 4) & 0x0f;
7257 #line 593 "rx-decode.opc"
7258 int rdst AU = op[2] & 0x0f;
7261 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7262 "/** 1111 1100 0001 01ss rsrc rdst min %1%S1, %0 */",
7263 op[0], op[1], op[2]);
7264 printf (" ss = 0x%x,", ss);
7265 printf (" rsrc = 0x%x,", rsrc);
7266 printf (" rdst = 0x%x\n", rdst);
7268 SYNTAX("min %1%S1, %0");
7269 #line 593 "rx-decode.opc"
7270 ID(min); SP(ss, rsrc); DR(rdst);
7278 switch (op[2] & 0x00)
7281 goto op_semantics_48;
7287 switch (op[2] & 0x00)
7290 goto op_semantics_48;
7296 switch (op[2] & 0x00)
7299 goto op_semantics_48;
7305 switch (op[2] & 0x00)
7310 /** 1111 1100 0001 10ss rsrc rdst emul %1%S1, %0 */
7311 #line 623 "rx-decode.opc"
7312 int ss AU = op[1] & 0x03;
7313 #line 623 "rx-decode.opc"
7314 int rsrc AU = (op[2] >> 4) & 0x0f;
7315 #line 623 "rx-decode.opc"
7316 int rdst AU = op[2] & 0x0f;
7319 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7320 "/** 1111 1100 0001 10ss rsrc rdst emul %1%S1, %0 */",
7321 op[0], op[1], op[2]);
7322 printf (" ss = 0x%x,", ss);
7323 printf (" rsrc = 0x%x,", rsrc);
7324 printf (" rdst = 0x%x\n", rdst);
7326 SYNTAX("emul %1%S1, %0");
7327 #line 623 "rx-decode.opc"
7328 ID(emul); SP(ss, rsrc); DR(rdst);
7336 switch (op[2] & 0x00)
7339 goto op_semantics_49;
7345 switch (op[2] & 0x00)
7348 goto op_semantics_49;
7354 switch (op[2] & 0x00)
7357 goto op_semantics_49;
7363 switch (op[2] & 0x00)
7368 /** 1111 1100 0001 11ss rsrc rdst emulu %1%S1, %0 */
7369 #line 635 "rx-decode.opc"
7370 int ss AU = op[1] & 0x03;
7371 #line 635 "rx-decode.opc"
7372 int rsrc AU = (op[2] >> 4) & 0x0f;
7373 #line 635 "rx-decode.opc"
7374 int rdst AU = op[2] & 0x0f;
7377 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7378 "/** 1111 1100 0001 11ss rsrc rdst emulu %1%S1, %0 */",
7379 op[0], op[1], op[2]);
7380 printf (" ss = 0x%x,", ss);
7381 printf (" rsrc = 0x%x,", rsrc);
7382 printf (" rdst = 0x%x\n", rdst);
7384 SYNTAX("emulu %1%S1, %0");
7385 #line 635 "rx-decode.opc"
7386 ID(emulu); SP(ss, rsrc); DR(rdst);
7394 switch (op[2] & 0x00)
7397 goto op_semantics_50;
7403 switch (op[2] & 0x00)
7406 goto op_semantics_50;
7412 switch (op[2] & 0x00)
7415 goto op_semantics_50;
7421 switch (op[2] & 0x00)
7426 /** 1111 1100 0010 00ss rsrc rdst div %1%S1, %0 */
7427 #line 647 "rx-decode.opc"
7428 int ss AU = op[1] & 0x03;
7429 #line 647 "rx-decode.opc"
7430 int rsrc AU = (op[2] >> 4) & 0x0f;
7431 #line 647 "rx-decode.opc"
7432 int rdst AU = op[2] & 0x0f;
7435 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7436 "/** 1111 1100 0010 00ss rsrc rdst div %1%S1, %0 */",
7437 op[0], op[1], op[2]);
7438 printf (" ss = 0x%x,", ss);
7439 printf (" rsrc = 0x%x,", rsrc);
7440 printf (" rdst = 0x%x\n", rdst);
7442 SYNTAX("div %1%S1, %0");
7443 #line 647 "rx-decode.opc"
7444 ID(div); SP(ss, rsrc); DR(rdst); F_O___;
7452 switch (op[2] & 0x00)
7455 goto op_semantics_51;
7461 switch (op[2] & 0x00)
7464 goto op_semantics_51;
7470 switch (op[2] & 0x00)
7473 goto op_semantics_51;
7479 switch (op[2] & 0x00)
7484 /** 1111 1100 0010 01ss rsrc rdst divu %1%S1, %0 */
7485 #line 659 "rx-decode.opc"
7486 int ss AU = op[1] & 0x03;
7487 #line 659 "rx-decode.opc"
7488 int rsrc AU = (op[2] >> 4) & 0x0f;
7489 #line 659 "rx-decode.opc"
7490 int rdst AU = op[2] & 0x0f;
7493 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7494 "/** 1111 1100 0010 01ss rsrc rdst divu %1%S1, %0 */",
7495 op[0], op[1], op[2]);
7496 printf (" ss = 0x%x,", ss);
7497 printf (" rsrc = 0x%x,", rsrc);
7498 printf (" rdst = 0x%x\n", rdst);
7500 SYNTAX("divu %1%S1, %0");
7501 #line 659 "rx-decode.opc"
7502 ID(divu); SP(ss, rsrc); DR(rdst); F_O___;
7510 switch (op[2] & 0x00)
7513 goto op_semantics_52;
7519 switch (op[2] & 0x00)
7522 goto op_semantics_52;
7528 switch (op[2] & 0x00)
7531 goto op_semantics_52;
7537 switch (op[2] & 0x00)
7542 /** 1111 1100 0011 00ss rsrc rdst tst %1%S1, %2 */
7543 #line 470 "rx-decode.opc"
7544 int ss AU = op[1] & 0x03;
7545 #line 470 "rx-decode.opc"
7546 int rsrc AU = (op[2] >> 4) & 0x0f;
7547 #line 470 "rx-decode.opc"
7548 int rdst AU = op[2] & 0x0f;
7551 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7552 "/** 1111 1100 0011 00ss rsrc rdst tst %1%S1, %2 */",
7553 op[0], op[1], op[2]);
7554 printf (" ss = 0x%x,", ss);
7555 printf (" rsrc = 0x%x,", rsrc);
7556 printf (" rdst = 0x%x\n", rdst);
7558 SYNTAX("tst %1%S1, %2");
7559 #line 470 "rx-decode.opc"
7560 ID(and); SP(ss, rsrc); S2R(rdst); F__SZ_;
7568 switch (op[2] & 0x00)
7571 goto op_semantics_53;
7577 switch (op[2] & 0x00)
7580 goto op_semantics_53;
7586 switch (op[2] & 0x00)
7589 goto op_semantics_53;
7595 switch (op[2] & 0x00)
7600 /** 1111 1100 0011 01ss rsrc rdst xor %1%S1, %0 */
7601 #line 449 "rx-decode.opc"
7602 int ss AU = op[1] & 0x03;
7603 #line 449 "rx-decode.opc"
7604 int rsrc AU = (op[2] >> 4) & 0x0f;
7605 #line 449 "rx-decode.opc"
7606 int rdst AU = op[2] & 0x0f;
7609 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7610 "/** 1111 1100 0011 01ss rsrc rdst xor %1%S1, %0 */",
7611 op[0], op[1], op[2]);
7612 printf (" ss = 0x%x,", ss);
7613 printf (" rsrc = 0x%x,", rsrc);
7614 printf (" rdst = 0x%x\n", rdst);
7616 SYNTAX("xor %1%S1, %0");
7617 #line 449 "rx-decode.opc"
7618 ID(xor); SP(ss, rsrc); DR(rdst); F__SZ_;
7626 switch (op[2] & 0x00)
7629 goto op_semantics_54;
7635 switch (op[2] & 0x00)
7638 goto op_semantics_54;
7644 switch (op[2] & 0x00)
7647 goto op_semantics_54;
7653 switch (op[2] & 0x00)
7657 /** 1111 1100 0011 1011 rsrc rdst not %1, %0 */
7658 #line 461 "rx-decode.opc"
7659 int rsrc AU = (op[2] >> 4) & 0x0f;
7660 #line 461 "rx-decode.opc"
7661 int rdst AU = op[2] & 0x0f;
7664 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7665 "/** 1111 1100 0011 1011 rsrc rdst not %1, %0 */",
7666 op[0], op[1], op[2]);
7667 printf (" rsrc = 0x%x,", rsrc);
7668 printf (" rdst = 0x%x\n", rdst);
7670 SYNTAX("not %1, %0");
7671 #line 461 "rx-decode.opc"
7672 ID(xor); DR(rdst); SR(rsrc); S2C(~0); F__SZ_;
7674 /*----------------------------------------------------------------------*/
7683 switch (op[2] & 0x00)
7688 /** 1111 1100 0100 00ss rsrc rdst xchg %1%S1, %0 */
7689 #line 383 "rx-decode.opc"
7690 int ss AU = op[1] & 0x03;
7691 #line 383 "rx-decode.opc"
7692 int rsrc AU = (op[2] >> 4) & 0x0f;
7693 #line 383 "rx-decode.opc"
7694 int rdst AU = op[2] & 0x0f;
7697 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7698 "/** 1111 1100 0100 00ss rsrc rdst xchg %1%S1, %0 */",
7699 op[0], op[1], op[2]);
7700 printf (" ss = 0x%x,", ss);
7701 printf (" rsrc = 0x%x,", rsrc);
7702 printf (" rdst = 0x%x\n", rdst);
7704 SYNTAX("xchg %1%S1, %0");
7705 #line 383 "rx-decode.opc"
7706 ID(xchg); DR(rdst); SP(ss, rsrc);
7714 switch (op[2] & 0x00)
7717 goto op_semantics_55;
7723 switch (op[2] & 0x00)
7726 goto op_semantics_55;
7732 switch (op[2] & 0x00)
7735 goto op_semantics_55;
7741 switch (op[2] & 0x00)
7746 /** 1111 1100 0100 01sd rsrc rdst itof %1%S1, %0 */
7747 #line 888 "rx-decode.opc"
7748 int sd AU = op[1] & 0x03;
7749 #line 888 "rx-decode.opc"
7750 int rsrc AU = (op[2] >> 4) & 0x0f;
7751 #line 888 "rx-decode.opc"
7752 int rdst AU = op[2] & 0x0f;
7755 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7756 "/** 1111 1100 0100 01sd rsrc rdst itof %1%S1, %0 */",
7757 op[0], op[1], op[2]);
7758 printf (" sd = 0x%x,", sd);
7759 printf (" rsrc = 0x%x,", rsrc);
7760 printf (" rdst = 0x%x\n", rdst);
7762 SYNTAX("itof %1%S1, %0");
7763 #line 888 "rx-decode.opc"
7764 ID(itof); DR (rdst); SP(sd, rsrc); F__SZ_;
7772 switch (op[2] & 0x00)
7775 goto op_semantics_56;
7781 switch (op[2] & 0x00)
7784 goto op_semantics_56;
7790 switch (op[2] & 0x00)
7793 goto op_semantics_56;
7799 switch (op[2] & 0x00)
7804 /** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */
7805 #line 900 "rx-decode.opc"
7806 int sd AU = op[1] & 0x03;
7807 #line 900 "rx-decode.opc"
7808 int rdst AU = (op[2] >> 4) & 0x0f;
7809 #line 900 "rx-decode.opc"
7810 int rsrc AU = op[2] & 0x0f;
7813 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7814 "/** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */",
7815 op[0], op[1], op[2]);
7816 printf (" sd = 0x%x,", sd);
7817 printf (" rdst = 0x%x,", rdst);
7818 printf (" rsrc = 0x%x\n", rsrc);
7820 SYNTAX("bset %1, %0%S0");
7821 #line 900 "rx-decode.opc"
7822 ID(bset); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); F_____;
7823 if (sd == 3) /* bset reg,reg */
7832 switch (op[2] & 0x00)
7835 goto op_semantics_57;
7841 switch (op[2] & 0x00)
7844 goto op_semantics_57;
7850 switch (op[2] & 0x00)
7853 goto op_semantics_57;
7859 switch (op[2] & 0x00)
7864 /** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */
7865 #line 912 "rx-decode.opc"
7866 int sd AU = op[1] & 0x03;
7867 #line 912 "rx-decode.opc"
7868 int rdst AU = (op[2] >> 4) & 0x0f;
7869 #line 912 "rx-decode.opc"
7870 int rsrc AU = op[2] & 0x0f;
7873 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7874 "/** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */",
7875 op[0], op[1], op[2]);
7876 printf (" sd = 0x%x,", sd);
7877 printf (" rdst = 0x%x,", rdst);
7878 printf (" rsrc = 0x%x\n", rsrc);
7880 SYNTAX("bclr %1, %0%S0");
7881 #line 912 "rx-decode.opc"
7882 ID(bclr); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE); F_____;
7883 if (sd == 3) /* bset reg,reg */
7892 switch (op[2] & 0x00)
7895 goto op_semantics_58;
7901 switch (op[2] & 0x00)
7904 goto op_semantics_58;
7910 switch (op[2] & 0x00)
7913 goto op_semantics_58;
7919 switch (op[2] & 0x00)
7924 /** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */
7925 #line 924 "rx-decode.opc"
7926 int sd AU = op[1] & 0x03;
7927 #line 924 "rx-decode.opc"
7928 int rdst AU = (op[2] >> 4) & 0x0f;
7929 #line 924 "rx-decode.opc"
7930 int rsrc AU = op[2] & 0x0f;
7933 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7934 "/** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */",
7935 op[0], op[1], op[2]);
7936 printf (" sd = 0x%x,", sd);
7937 printf (" rdst = 0x%x,", rdst);
7938 printf (" rsrc = 0x%x\n", rsrc);
7940 SYNTAX("btst %2, %1%S1");
7941 #line 924 "rx-decode.opc"
7942 ID(btst); BWL(BSIZE); S2R(rsrc); SD(sd, rdst, BSIZE); F___ZC;
7943 if (sd == 3) /* bset reg,reg */
7952 switch (op[2] & 0x00)
7955 goto op_semantics_59;
7961 switch (op[2] & 0x00)
7964 goto op_semantics_59;
7970 switch (op[2] & 0x00)
7973 goto op_semantics_59;
7979 switch (op[2] & 0x00)
7984 /** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */
7985 #line 936 "rx-decode.opc"
7986 int sd AU = op[1] & 0x03;
7987 #line 936 "rx-decode.opc"
7988 int rdst AU = (op[2] >> 4) & 0x0f;
7989 #line 936 "rx-decode.opc"
7990 int rsrc AU = op[2] & 0x0f;
7993 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7994 "/** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */",
7995 op[0], op[1], op[2]);
7996 printf (" sd = 0x%x,", sd);
7997 printf (" rdst = 0x%x,", rdst);
7998 printf (" rsrc = 0x%x\n", rsrc);
8000 SYNTAX("bnot %1, %0%S0");
8001 #line 936 "rx-decode.opc"
8002 ID(bnot); BWL(BSIZE); SR(rsrc); DD(sd, rdst, BSIZE);
8003 if (sd == 3) /* bset reg,reg */
8012 switch (op[2] & 0x00)
8015 goto op_semantics_60;
8021 switch (op[2] & 0x00)
8024 goto op_semantics_60;
8030 switch (op[2] & 0x00)
8033 goto op_semantics_60;
8039 switch (op[2] & 0x00)
8044 /** 1111 1100 1000 00sd rsrc rdst fsub %1%S1, %0 */
8045 #line 867 "rx-decode.opc"
8046 int sd AU = op[1] & 0x03;
8047 #line 867 "rx-decode.opc"
8048 int rsrc AU = (op[2] >> 4) & 0x0f;
8049 #line 867 "rx-decode.opc"
8050 int rdst AU = op[2] & 0x0f;
8053 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8054 "/** 1111 1100 1000 00sd rsrc rdst fsub %1%S1, %0 */",
8055 op[0], op[1], op[2]);
8056 printf (" sd = 0x%x,", sd);
8057 printf (" rsrc = 0x%x,", rsrc);
8058 printf (" rdst = 0x%x\n", rdst);
8060 SYNTAX("fsub %1%S1, %0");
8061 #line 867 "rx-decode.opc"
8062 ID(fsub); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8070 switch (op[2] & 0x00)
8073 goto op_semantics_61;
8079 switch (op[2] & 0x00)
8082 goto op_semantics_61;
8088 switch (op[2] & 0x00)
8091 goto op_semantics_61;
8097 switch (op[2] & 0x00)
8102 /** 1111 1100 1000 01sd rsrc rdst fcmp %1%S1, %0 */
8103 #line 861 "rx-decode.opc"
8104 int sd AU = op[1] & 0x03;
8105 #line 861 "rx-decode.opc"
8106 int rsrc AU = (op[2] >> 4) & 0x0f;
8107 #line 861 "rx-decode.opc"
8108 int rdst AU = op[2] & 0x0f;
8111 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8112 "/** 1111 1100 1000 01sd rsrc rdst fcmp %1%S1, %0 */",
8113 op[0], op[1], op[2]);
8114 printf (" sd = 0x%x,", sd);
8115 printf (" rsrc = 0x%x,", rsrc);
8116 printf (" rdst = 0x%x\n", rdst);
8118 SYNTAX("fcmp %1%S1, %0");
8119 #line 861 "rx-decode.opc"
8120 ID(fcmp); DR(rdst); SD(sd, rsrc, LSIZE); F_OSZ_;
8128 switch (op[2] & 0x00)
8131 goto op_semantics_62;
8137 switch (op[2] & 0x00)
8140 goto op_semantics_62;
8146 switch (op[2] & 0x00)
8149 goto op_semantics_62;
8155 switch (op[2] & 0x00)
8160 /** 1111 1100 1000 10sd rsrc rdst fadd %1%S1, %0 */
8161 #line 855 "rx-decode.opc"
8162 int sd AU = op[1] & 0x03;
8163 #line 855 "rx-decode.opc"
8164 int rsrc AU = (op[2] >> 4) & 0x0f;
8165 #line 855 "rx-decode.opc"
8166 int rdst AU = op[2] & 0x0f;
8169 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8170 "/** 1111 1100 1000 10sd rsrc rdst fadd %1%S1, %0 */",
8171 op[0], op[1], op[2]);
8172 printf (" sd = 0x%x,", sd);
8173 printf (" rsrc = 0x%x,", rsrc);
8174 printf (" rdst = 0x%x\n", rdst);
8176 SYNTAX("fadd %1%S1, %0");
8177 #line 855 "rx-decode.opc"
8178 ID(fadd); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8186 switch (op[2] & 0x00)
8189 goto op_semantics_63;
8195 switch (op[2] & 0x00)
8198 goto op_semantics_63;
8204 switch (op[2] & 0x00)
8207 goto op_semantics_63;
8213 switch (op[2] & 0x00)
8218 /** 1111 1100 1000 11sd rsrc rdst fmul %1%S1, %0 */
8219 #line 876 "rx-decode.opc"
8220 int sd AU = op[1] & 0x03;
8221 #line 876 "rx-decode.opc"
8222 int rsrc AU = (op[2] >> 4) & 0x0f;
8223 #line 876 "rx-decode.opc"
8224 int rdst AU = op[2] & 0x0f;
8227 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8228 "/** 1111 1100 1000 11sd rsrc rdst fmul %1%S1, %0 */",
8229 op[0], op[1], op[2]);
8230 printf (" sd = 0x%x,", sd);
8231 printf (" rsrc = 0x%x,", rsrc);
8232 printf (" rdst = 0x%x\n", rdst);
8234 SYNTAX("fmul %1%S1, %0");
8235 #line 876 "rx-decode.opc"
8236 ID(fmul); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8244 switch (op[2] & 0x00)
8247 goto op_semantics_64;
8253 switch (op[2] & 0x00)
8256 goto op_semantics_64;
8262 switch (op[2] & 0x00)
8265 goto op_semantics_64;
8271 switch (op[2] & 0x00)
8276 /** 1111 1100 1001 00sd rsrc rdst fdiv %1%S1, %0 */
8277 #line 882 "rx-decode.opc"
8278 int sd AU = op[1] & 0x03;
8279 #line 882 "rx-decode.opc"
8280 int rsrc AU = (op[2] >> 4) & 0x0f;
8281 #line 882 "rx-decode.opc"
8282 int rdst AU = op[2] & 0x0f;
8285 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8286 "/** 1111 1100 1001 00sd rsrc rdst fdiv %1%S1, %0 */",
8287 op[0], op[1], op[2]);
8288 printf (" sd = 0x%x,", sd);
8289 printf (" rsrc = 0x%x,", rsrc);
8290 printf (" rdst = 0x%x\n", rdst);
8292 SYNTAX("fdiv %1%S1, %0");
8293 #line 882 "rx-decode.opc"
8294 ID(fdiv); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8302 switch (op[2] & 0x00)
8305 goto op_semantics_65;
8311 switch (op[2] & 0x00)
8314 goto op_semantics_65;
8320 switch (op[2] & 0x00)
8323 goto op_semantics_65;
8329 switch (op[2] & 0x00)
8334 /** 1111 1100 1001 01sd rsrc rdst ftoi %1%S1, %0 */
8335 #line 870 "rx-decode.opc"
8336 int sd AU = op[1] & 0x03;
8337 #line 870 "rx-decode.opc"
8338 int rsrc AU = (op[2] >> 4) & 0x0f;
8339 #line 870 "rx-decode.opc"
8340 int rdst AU = op[2] & 0x0f;
8343 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8344 "/** 1111 1100 1001 01sd rsrc rdst ftoi %1%S1, %0 */",
8345 op[0], op[1], op[2]);
8346 printf (" sd = 0x%x,", sd);
8347 printf (" rsrc = 0x%x,", rsrc);
8348 printf (" rdst = 0x%x\n", rdst);
8350 SYNTAX("ftoi %1%S1, %0");
8351 #line 870 "rx-decode.opc"
8352 ID(ftoi); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8360 switch (op[2] & 0x00)
8363 goto op_semantics_66;
8369 switch (op[2] & 0x00)
8372 goto op_semantics_66;
8378 switch (op[2] & 0x00)
8381 goto op_semantics_66;
8387 switch (op[2] & 0x00)
8392 /** 1111 1100 1001 10sd rsrc rdst round %1%S1, %0 */
8393 #line 885 "rx-decode.opc"
8394 int sd AU = op[1] & 0x03;
8395 #line 885 "rx-decode.opc"
8396 int rsrc AU = (op[2] >> 4) & 0x0f;
8397 #line 885 "rx-decode.opc"
8398 int rdst AU = op[2] & 0x0f;
8401 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8402 "/** 1111 1100 1001 10sd rsrc rdst round %1%S1, %0 */",
8403 op[0], op[1], op[2]);
8404 printf (" sd = 0x%x,", sd);
8405 printf (" rsrc = 0x%x,", rsrc);
8406 printf (" rdst = 0x%x\n", rdst);
8408 SYNTAX("round %1%S1, %0");
8409 #line 885 "rx-decode.opc"
8410 ID(round); DR(rdst); SD(sd, rsrc, LSIZE); F__SZ_;
8418 switch (op[2] & 0x00)
8421 goto op_semantics_67;
8427 switch (op[2] & 0x00)
8430 goto op_semantics_67;
8436 switch (op[2] & 0x00)
8439 goto op_semantics_67;
8445 switch (op[2] & 0x00)
8450 /** 1111 1100 1101 sz sd rdst cond sc%1%s %0 */
8451 #line 1002 "rx-decode.opc"
8452 int sz AU = (op[1] >> 2) & 0x03;
8453 #line 1002 "rx-decode.opc"
8454 int sd AU = op[1] & 0x03;
8455 #line 1002 "rx-decode.opc"
8456 int rdst AU = (op[2] >> 4) & 0x0f;
8457 #line 1002 "rx-decode.opc"
8458 int cond AU = op[2] & 0x0f;
8461 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8462 "/** 1111 1100 1101 sz sd rdst cond sc%1%s %0 */",
8463 op[0], op[1], op[2]);
8464 printf (" sz = 0x%x,", sz);
8465 printf (" sd = 0x%x,", sd);
8466 printf (" rdst = 0x%x,", rdst);
8467 printf (" cond = 0x%x\n", cond);
8469 SYNTAX("sc%1%s %0");
8470 #line 1002 "rx-decode.opc"
8471 ID(sccnd); BWL(sz); DD (sd, rdst, sz); Scc(cond);
8479 switch (op[2] & 0x00)
8482 goto op_semantics_68;
8488 switch (op[2] & 0x00)
8491 goto op_semantics_68;
8497 switch (op[2] & 0x00)
8500 goto op_semantics_68;
8506 switch (op[2] & 0x00)
8509 goto op_semantics_68;
8515 switch (op[2] & 0x00)
8518 goto op_semantics_68;
8524 switch (op[2] & 0x00)
8527 goto op_semantics_68;
8533 switch (op[2] & 0x00)
8536 goto op_semantics_68;
8542 switch (op[2] & 0x00)
8545 goto op_semantics_68;
8551 switch (op[2] & 0x00)
8554 goto op_semantics_68;
8560 switch (op[2] & 0x00)
8563 goto op_semantics_68;
8569 switch (op[2] & 0x00)
8572 goto op_semantics_68;
8578 switch (op[2] & 0x0f)
8597 /** 1111 1100 111bit sd rdst cond bm%2 #%1, %0%S0 */
8598 #line 945 "rx-decode.opc"
8599 int bit AU = (op[1] >> 2) & 0x07;
8600 #line 945 "rx-decode.opc"
8601 int sd AU = op[1] & 0x03;
8602 #line 945 "rx-decode.opc"
8603 int rdst AU = (op[2] >> 4) & 0x0f;
8604 #line 945 "rx-decode.opc"
8605 int cond AU = op[2] & 0x0f;
8608 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8609 "/** 1111 1100 111bit sd rdst cond bm%2 #%1, %0%S0 */",
8610 op[0], op[1], op[2]);
8611 printf (" bit = 0x%x,", bit);
8612 printf (" sd = 0x%x,", sd);
8613 printf (" rdst = 0x%x,", rdst);
8614 printf (" cond = 0x%x\n", cond);
8616 SYNTAX("bm%2 #%1, %0%S0");
8617 #line 945 "rx-decode.opc"
8618 ID(bmcc); BWL(BSIZE); S2cc(cond); SC(bit); DD(sd, rdst, BSIZE);
8625 /** 1111 1100 111bit sd rdst 1111 bnot #%1, %0%S0 */
8626 #line 933 "rx-decode.opc"
8627 int bit AU = (op[1] >> 2) & 0x07;
8628 #line 933 "rx-decode.opc"
8629 int sd AU = op[1] & 0x03;
8630 #line 933 "rx-decode.opc"
8631 int rdst AU = (op[2] >> 4) & 0x0f;
8634 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8635 "/** 1111 1100 111bit sd rdst 1111 bnot #%1, %0%S0 */",
8636 op[0], op[1], op[2]);
8637 printf (" bit = 0x%x,", bit);
8638 printf (" sd = 0x%x,", sd);
8639 printf (" rdst = 0x%x\n", rdst);
8641 SYNTAX("bnot #%1, %0%S0");
8642 #line 933 "rx-decode.opc"
8643 ID(bnot); BWL(BSIZE); SC(bit); DD(sd, rdst, BSIZE);
8651 switch (op[2] & 0x0f)
8668 goto op_semantics_69;
8671 goto op_semantics_70;
8677 switch (op[2] & 0x0f)
8694 goto op_semantics_69;
8697 goto op_semantics_70;
8703 switch (op[2] & 0x0f)
8720 goto op_semantics_69;
8723 goto op_semantics_70;
8729 switch (op[2] & 0x0f)
8746 goto op_semantics_69;
8749 goto op_semantics_70;
8755 switch (op[2] & 0x0f)
8772 goto op_semantics_69;
8775 goto op_semantics_70;
8781 switch (op[2] & 0x0f)
8798 goto op_semantics_69;
8801 goto op_semantics_70;
8807 switch (op[2] & 0x0f)
8824 goto op_semantics_69;
8827 goto op_semantics_70;
8833 switch (op[2] & 0x0f)
8850 goto op_semantics_69;
8853 goto op_semantics_70;
8859 switch (op[2] & 0x0f)
8876 goto op_semantics_69;
8879 goto op_semantics_70;
8885 switch (op[2] & 0x0f)
8902 goto op_semantics_69;
8905 goto op_semantics_70;
8911 switch (op[2] & 0x0f)
8928 goto op_semantics_69;
8931 goto op_semantics_70;
8937 switch (op[2] & 0x0f)
8954 goto op_semantics_69;
8957 goto op_semantics_70;
8963 switch (op[2] & 0x0f)
8980 goto op_semantics_69;
8983 goto op_semantics_70;
8989 switch (op[2] & 0x0f)
9006 goto op_semantics_69;
9009 goto op_semantics_70;
9015 switch (op[2] & 0x0f)
9032 goto op_semantics_69;
9035 goto op_semantics_70;
9041 switch (op[2] & 0x0f)
9058 goto op_semantics_69;
9061 goto op_semantics_70;
9067 switch (op[2] & 0x0f)
9084 goto op_semantics_69;
9087 goto op_semantics_70;
9093 switch (op[2] & 0x0f)
9110 goto op_semantics_69;
9113 goto op_semantics_70;
9119 switch (op[2] & 0x0f)
9136 goto op_semantics_69;
9139 goto op_semantics_70;
9145 switch (op[2] & 0x0f)
9162 goto op_semantics_69;
9165 goto op_semantics_70;
9171 switch (op[2] & 0x0f)
9188 goto op_semantics_69;
9191 goto op_semantics_70;
9197 switch (op[2] & 0x0f)
9214 goto op_semantics_69;
9217 goto op_semantics_70;
9223 switch (op[2] & 0x0f)
9240 goto op_semantics_69;
9243 goto op_semantics_70;
9249 switch (op[2] & 0x0f)
9266 goto op_semantics_69;
9269 goto op_semantics_70;
9275 switch (op[2] & 0x0f)
9292 goto op_semantics_69;
9295 goto op_semantics_70;
9301 switch (op[2] & 0x0f)
9318 goto op_semantics_69;
9321 goto op_semantics_70;
9327 switch (op[2] & 0x0f)
9344 goto op_semantics_69;
9347 goto op_semantics_70;
9353 switch (op[2] & 0x0f)
9370 goto op_semantics_69;
9373 goto op_semantics_70;
9379 switch (op[2] & 0x0f)
9396 goto op_semantics_69;
9399 goto op_semantics_70;
9405 switch (op[2] & 0x0f)
9422 goto op_semantics_69;
9425 goto op_semantics_70;
9431 switch (op[2] & 0x0f)
9448 goto op_semantics_69;
9451 goto op_semantics_70;
9455 default: UNSUPPORTED(); break;
9460 switch (op[1] & 0xff)
9464 switch (op[2] & 0x00)
9468 /** 1111 1101 0000 0000 srca srcb mulhi %1, %2 */
9469 #line 810 "rx-decode.opc"
9470 int srca AU = (op[2] >> 4) & 0x0f;
9471 #line 810 "rx-decode.opc"
9472 int srcb AU = op[2] & 0x0f;
9475 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9476 "/** 1111 1101 0000 0000 srca srcb mulhi %1, %2 */",
9477 op[0], op[1], op[2]);
9478 printf (" srca = 0x%x,", srca);
9479 printf (" srcb = 0x%x\n", srcb);
9481 SYNTAX("mulhi %1, %2");
9482 #line 810 "rx-decode.opc"
9483 ID(mulhi); SR(srca); S2R(srcb); F_____;
9491 switch (op[2] & 0x00)
9495 /** 1111 1101 0000 0001 srca srcb mullo %1, %2 */
9496 #line 813 "rx-decode.opc"
9497 int srca AU = (op[2] >> 4) & 0x0f;
9498 #line 813 "rx-decode.opc"
9499 int srcb AU = op[2] & 0x0f;
9502 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9503 "/** 1111 1101 0000 0001 srca srcb mullo %1, %2 */",
9504 op[0], op[1], op[2]);
9505 printf (" srca = 0x%x,", srca);
9506 printf (" srcb = 0x%x\n", srcb);
9508 SYNTAX("mullo %1, %2");
9509 #line 813 "rx-decode.opc"
9510 ID(mullo); SR(srca); S2R(srcb); F_____;
9518 switch (op[2] & 0x00)
9522 /** 1111 1101 0000 0100 srca srcb machi %1, %2 */
9523 #line 816 "rx-decode.opc"
9524 int srca AU = (op[2] >> 4) & 0x0f;
9525 #line 816 "rx-decode.opc"
9526 int srcb AU = op[2] & 0x0f;
9529 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9530 "/** 1111 1101 0000 0100 srca srcb machi %1, %2 */",
9531 op[0], op[1], op[2]);
9532 printf (" srca = 0x%x,", srca);
9533 printf (" srcb = 0x%x\n", srcb);
9535 SYNTAX("machi %1, %2");
9536 #line 816 "rx-decode.opc"
9537 ID(machi); SR(srca); S2R(srcb); F_____;
9545 switch (op[2] & 0x00)
9549 /** 1111 1101 0000 0101 srca srcb maclo %1, %2 */
9550 #line 819 "rx-decode.opc"
9551 int srca AU = (op[2] >> 4) & 0x0f;
9552 #line 819 "rx-decode.opc"
9553 int srcb AU = op[2] & 0x0f;
9556 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9557 "/** 1111 1101 0000 0101 srca srcb maclo %1, %2 */",
9558 op[0], op[1], op[2]);
9559 printf (" srca = 0x%x,", srca);
9560 printf (" srcb = 0x%x\n", srcb);
9562 SYNTAX("maclo %1, %2");
9563 #line 819 "rx-decode.opc"
9564 ID(maclo); SR(srca); S2R(srcb); F_____;
9572 switch (op[2] & 0xf0)
9576 /** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */
9577 #line 822 "rx-decode.opc"
9578 int rsrc AU = op[2] & 0x0f;
9581 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9582 "/** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */",
9583 op[0], op[1], op[2]);
9584 printf (" rsrc = 0x%x\n", rsrc);
9586 SYNTAX("mvtachi %1");
9587 #line 822 "rx-decode.opc"
9588 ID(mvtachi); SR(rsrc); F_____;
9594 /** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */
9595 #line 825 "rx-decode.opc"
9596 int rsrc AU = op[2] & 0x0f;
9599 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9600 "/** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */",
9601 op[0], op[1], op[2]);
9602 printf (" rsrc = 0x%x\n", rsrc);
9604 SYNTAX("mvtaclo %1");
9605 #line 825 "rx-decode.opc"
9606 ID(mvtaclo); SR(rsrc); F_____;
9610 default: UNSUPPORTED(); break;
9615 switch (op[2] & 0xef)
9619 /** 1111 1101 0001 1000 000i 0000 racw #%1 */
9620 #line 837 "rx-decode.opc"
9621 int i AU = (op[2] >> 4) & 0x01;
9624 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9625 "/** 1111 1101 0001 1000 000i 0000 racw #%1 */",
9626 op[0], op[1], op[2]);
9627 printf (" i = 0x%x\n", i);
9630 #line 837 "rx-decode.opc"
9631 ID(racw); SC(i+1); F_____;
9633 /*----------------------------------------------------------------------*/
9638 default: UNSUPPORTED(); break;
9643 switch (op[2] & 0xf0)
9647 /** 1111 1101 0001 1111 0000 rdst mvfachi %0 */
9648 #line 828 "rx-decode.opc"
9649 int rdst AU = op[2] & 0x0f;
9652 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9653 "/** 1111 1101 0001 1111 0000 rdst mvfachi %0 */",
9654 op[0], op[1], op[2]);
9655 printf (" rdst = 0x%x\n", rdst);
9657 SYNTAX("mvfachi %0");
9658 #line 828 "rx-decode.opc"
9659 ID(mvfachi); DR(rdst); F_____;
9665 /** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */
9666 #line 834 "rx-decode.opc"
9667 int rdst AU = op[2] & 0x0f;
9670 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9671 "/** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */",
9672 op[0], op[1], op[2]);
9673 printf (" rdst = 0x%x\n", rdst);
9675 SYNTAX("mvfaclo %0");
9676 #line 834 "rx-decode.opc"
9677 ID(mvfaclo); DR(rdst); F_____;
9683 /** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */
9684 #line 831 "rx-decode.opc"
9685 int rdst AU = op[2] & 0x0f;
9688 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9689 "/** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */",
9690 op[0], op[1], op[2]);
9691 printf (" rdst = 0x%x\n", rdst);
9693 SYNTAX("mvfacmi %0");
9694 #line 831 "rx-decode.opc"
9695 ID(mvfacmi); DR(rdst); F_____;
9699 default: UNSUPPORTED(); break;
9704 switch (op[2] & 0x00)
9709 /** 1111 1101 0010 0p sz rdst rsrc mov%s %1, %0 */
9710 #line 344 "rx-decode.opc"
9711 int p AU = (op[1] >> 2) & 0x01;
9712 #line 344 "rx-decode.opc"
9713 int sz AU = op[1] & 0x03;
9714 #line 344 "rx-decode.opc"
9715 int rdst AU = (op[2] >> 4) & 0x0f;
9716 #line 344 "rx-decode.opc"
9717 int rsrc AU = op[2] & 0x0f;
9720 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9721 "/** 1111 1101 0010 0p sz rdst rsrc mov%s %1, %0 */",
9722 op[0], op[1], op[2]);
9723 printf (" p = 0x%x,", p);
9724 printf (" sz = 0x%x,", sz);
9725 printf (" rdst = 0x%x,", rdst);
9726 printf (" rsrc = 0x%x\n", rsrc);
9728 SYNTAX("mov%s %1, %0");
9729 #line 344 "rx-decode.opc"
9730 ID(mov); sBWL (sz); SR(rsrc); F_____;
9731 OP(0, p ? RX_Operand_Predec : RX_Operand_Postinc, rdst, 0);
9739 switch (op[2] & 0x00)
9742 goto op_semantics_71;
9748 switch (op[2] & 0x00)
9751 goto op_semantics_71;
9757 switch (op[2] & 0x00)
9760 goto op_semantics_71;
9766 switch (op[2] & 0x00)
9769 goto op_semantics_71;
9775 switch (op[2] & 0x00)
9778 goto op_semantics_71;
9784 switch (op[2] & 0x00)
9789 /** 1111 1101 0010 1p sz rsrc rdst mov%s %1, %0 */
9790 #line 348 "rx-decode.opc"
9791 int p AU = (op[1] >> 2) & 0x01;
9792 #line 348 "rx-decode.opc"
9793 int sz AU = op[1] & 0x03;
9794 #line 348 "rx-decode.opc"
9795 int rsrc AU = (op[2] >> 4) & 0x0f;
9796 #line 348 "rx-decode.opc"
9797 int rdst AU = op[2] & 0x0f;
9800 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9801 "/** 1111 1101 0010 1p sz rsrc rdst mov%s %1, %0 */",
9802 op[0], op[1], op[2]);
9803 printf (" p = 0x%x,", p);
9804 printf (" sz = 0x%x,", sz);
9805 printf (" rsrc = 0x%x,", rsrc);
9806 printf (" rdst = 0x%x\n", rdst);
9808 SYNTAX("mov%s %1, %0");
9809 #line 348 "rx-decode.opc"
9810 ID(mov); sBWL (sz); DR(rdst); F_____;
9811 OP(1, p ? RX_Operand_Predec : RX_Operand_Postinc, rsrc, 0);
9819 switch (op[2] & 0x00)
9822 goto op_semantics_72;
9828 switch (op[2] & 0x00)
9831 goto op_semantics_72;
9837 switch (op[2] & 0x00)
9840 goto op_semantics_72;
9846 switch (op[2] & 0x00)
9849 goto op_semantics_72;
9855 switch (op[2] & 0x00)
9858 goto op_semantics_72;
9864 switch (op[2] & 0x00)
9869 /** 1111 1101 0011 1p sz rsrc rdst movu%s %1, %0 */
9870 #line 358 "rx-decode.opc"
9871 int p AU = (op[1] >> 2) & 0x01;
9872 #line 358 "rx-decode.opc"
9873 int sz AU = op[1] & 0x03;
9874 #line 358 "rx-decode.opc"
9875 int rsrc AU = (op[2] >> 4) & 0x0f;
9876 #line 358 "rx-decode.opc"
9877 int rdst AU = op[2] & 0x0f;
9880 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9881 "/** 1111 1101 0011 1p sz rsrc rdst movu%s %1, %0 */",
9882 op[0], op[1], op[2]);
9883 printf (" p = 0x%x,", p);
9884 printf (" sz = 0x%x,", sz);
9885 printf (" rsrc = 0x%x,", rsrc);
9886 printf (" rdst = 0x%x\n", rdst);
9888 SYNTAX("movu%s %1, %0");
9889 #line 358 "rx-decode.opc"
9890 ID(mov); uBWL (sz); DR(rdst); F_____;
9891 OP(1, p ? RX_Operand_Predec : RX_Operand_Postinc, rsrc, 0);
9893 /*----------------------------------------------------------------------*/
9902 switch (op[2] & 0x00)
9905 goto op_semantics_73;
9911 switch (op[2] & 0x00)
9914 goto op_semantics_73;
9920 switch (op[2] & 0x00)
9923 goto op_semantics_73;
9929 switch (op[2] & 0x00)
9932 goto op_semantics_73;
9938 switch (op[2] & 0x00)
9941 goto op_semantics_73;
9947 switch (op[2] & 0x00)
9951 /** 1111 1101 0110 0000 rsrc rdst shlr %2, %0 */
9952 #line 691 "rx-decode.opc"
9953 int rsrc AU = (op[2] >> 4) & 0x0f;
9954 #line 691 "rx-decode.opc"
9955 int rdst AU = op[2] & 0x0f;
9958 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9959 "/** 1111 1101 0110 0000 rsrc rdst shlr %2, %0 */",
9960 op[0], op[1], op[2]);
9961 printf (" rsrc = 0x%x,", rsrc);
9962 printf (" rdst = 0x%x\n", rdst);
9964 SYNTAX("shlr %2, %0");
9965 #line 691 "rx-decode.opc"
9966 ID(shlr); S2R(rsrc); SR(rdst); DR(rdst); F__SZC;
9974 switch (op[2] & 0x00)
9978 /** 1111 1101 0110 0001 rsrc rdst shar %2, %0 */
9979 #line 681 "rx-decode.opc"
9980 int rsrc AU = (op[2] >> 4) & 0x0f;
9981 #line 681 "rx-decode.opc"
9982 int rdst AU = op[2] & 0x0f;
9985 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9986 "/** 1111 1101 0110 0001 rsrc rdst shar %2, %0 */",
9987 op[0], op[1], op[2]);
9988 printf (" rsrc = 0x%x,", rsrc);
9989 printf (" rdst = 0x%x\n", rdst);
9991 SYNTAX("shar %2, %0");
9992 #line 681 "rx-decode.opc"
9993 ID(shar); S2R(rsrc); SR(rdst); DR(rdst); F_0SZC;
10001 switch (op[2] & 0x00)
10005 /** 1111 1101 0110 0010 rsrc rdst shll %2, %0 */
10006 #line 671 "rx-decode.opc"
10007 int rsrc AU = (op[2] >> 4) & 0x0f;
10008 #line 671 "rx-decode.opc"
10009 int rdst AU = op[2] & 0x0f;
10012 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10013 "/** 1111 1101 0110 0010 rsrc rdst shll %2, %0 */",
10014 op[0], op[1], op[2]);
10015 printf (" rsrc = 0x%x,", rsrc);
10016 printf (" rdst = 0x%x\n", rdst);
10018 SYNTAX("shll %2, %0");
10019 #line 671 "rx-decode.opc"
10020 ID(shll); S2R(rsrc); SR(rdst); DR(rdst); F_OSZC;
10028 switch (op[2] & 0x00)
10032 /** 1111 1101 0110 0100 rsrc rdst rotr %1, %0 */
10033 #line 715 "rx-decode.opc"
10034 int rsrc AU = (op[2] >> 4) & 0x0f;
10035 #line 715 "rx-decode.opc"
10036 int rdst AU = op[2] & 0x0f;
10039 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10040 "/** 1111 1101 0110 0100 rsrc rdst rotr %1, %0 */",
10041 op[0], op[1], op[2]);
10042 printf (" rsrc = 0x%x,", rsrc);
10043 printf (" rdst = 0x%x\n", rdst);
10045 SYNTAX("rotr %1, %0");
10046 #line 715 "rx-decode.opc"
10047 ID(rotr); SR(rsrc); DR(rdst); F__SZC;
10055 switch (op[2] & 0x00)
10059 /** 1111 1101 0110 0101 rsrc rdst revw %1, %0 */
10060 #line 718 "rx-decode.opc"
10061 int rsrc AU = (op[2] >> 4) & 0x0f;
10062 #line 718 "rx-decode.opc"
10063 int rdst AU = op[2] & 0x0f;
10066 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10067 "/** 1111 1101 0110 0101 rsrc rdst revw %1, %0 */",
10068 op[0], op[1], op[2]);
10069 printf (" rsrc = 0x%x,", rsrc);
10070 printf (" rdst = 0x%x\n", rdst);
10072 SYNTAX("revw %1, %0");
10073 #line 718 "rx-decode.opc"
10074 ID(revw); SR(rsrc); DR(rdst);
10082 switch (op[2] & 0x00)
10086 /** 1111 1101 0110 0110 rsrc rdst rotl %1, %0 */
10087 #line 709 "rx-decode.opc"
10088 int rsrc AU = (op[2] >> 4) & 0x0f;
10089 #line 709 "rx-decode.opc"
10090 int rdst AU = op[2] & 0x0f;
10093 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10094 "/** 1111 1101 0110 0110 rsrc rdst rotl %1, %0 */",
10095 op[0], op[1], op[2]);
10096 printf (" rsrc = 0x%x,", rsrc);
10097 printf (" rdst = 0x%x\n", rdst);
10099 SYNTAX("rotl %1, %0");
10100 #line 709 "rx-decode.opc"
10101 ID(rotl); SR(rsrc); DR(rdst); F__SZC;
10109 switch (op[2] & 0x00)
10113 /** 1111 1101 0110 0111 rsrc rdst revl %1, %0 */
10114 #line 721 "rx-decode.opc"
10115 int rsrc AU = (op[2] >> 4) & 0x0f;
10116 #line 721 "rx-decode.opc"
10117 int rdst AU = op[2] & 0x0f;
10120 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10121 "/** 1111 1101 0110 0111 rsrc rdst revl %1, %0 */",
10122 op[0], op[1], op[2]);
10123 printf (" rsrc = 0x%x,", rsrc);
10124 printf (" rdst = 0x%x\n", rdst);
10126 SYNTAX("revl %1, %0");
10127 #line 721 "rx-decode.opc"
10128 ID(revl); SR(rsrc); DR(rdst);
10130 /*----------------------------------------------------------------------*/
10139 switch (op[2] & 0x00)
10144 /** 1111 1101 0110 100c rsrc rdst mvtc %1, %0 */
10145 #line 972 "rx-decode.opc"
10146 int c AU = op[1] & 0x01;
10147 #line 972 "rx-decode.opc"
10148 int rsrc AU = (op[2] >> 4) & 0x0f;
10149 #line 972 "rx-decode.opc"
10150 int rdst AU = op[2] & 0x0f;
10153 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10154 "/** 1111 1101 0110 100c rsrc rdst mvtc %1, %0 */",
10155 op[0], op[1], op[2]);
10156 printf (" c = 0x%x,", c);
10157 printf (" rsrc = 0x%x,", rsrc);
10158 printf (" rdst = 0x%x\n", rdst);
10160 SYNTAX("mvtc %1, %0");
10161 #line 972 "rx-decode.opc"
10162 ID(mov); SR(rsrc); DR(c*16+rdst + 16);
10170 switch (op[2] & 0x00)
10173 goto op_semantics_74;
10179 switch (op[2] & 0x00)
10184 /** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */
10185 #line 975 "rx-decode.opc"
10186 int s AU = op[1] & 0x01;
10187 #line 975 "rx-decode.opc"
10188 int rsrc AU = (op[2] >> 4) & 0x0f;
10189 #line 975 "rx-decode.opc"
10190 int rdst AU = op[2] & 0x0f;
10193 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10194 "/** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */",
10195 op[0], op[1], op[2]);
10196 printf (" s = 0x%x,", s);
10197 printf (" rsrc = 0x%x,", rsrc);
10198 printf (" rdst = 0x%x\n", rdst);
10200 SYNTAX("mvfc %1, %0");
10201 #line 975 "rx-decode.opc"
10202 ID(mov); SR((s*16+rsrc) + 16); DR(rdst);
10204 /*----------------------------------------------------------------------*/
10213 switch (op[2] & 0x00)
10216 goto op_semantics_75;
10222 switch (op[2] & 0x00)
10227 /** 1111 1101 0110 110i mmmm rdst rotr #%1, %0 */
10228 #line 712 "rx-decode.opc"
10229 int i AU = op[1] & 0x01;
10230 #line 712 "rx-decode.opc"
10231 int mmmm AU = (op[2] >> 4) & 0x0f;
10232 #line 712 "rx-decode.opc"
10233 int rdst AU = op[2] & 0x0f;
10236 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10237 "/** 1111 1101 0110 110i mmmm rdst rotr #%1, %0 */",
10238 op[0], op[1], op[2]);
10239 printf (" i = 0x%x,", i);
10240 printf (" mmmm = 0x%x,", mmmm);
10241 printf (" rdst = 0x%x\n", rdst);
10243 SYNTAX("rotr #%1, %0");
10244 #line 712 "rx-decode.opc"
10245 ID(rotr); SC(i*16+mmmm); DR(rdst); F__SZC;
10253 switch (op[2] & 0x00)
10256 goto op_semantics_76;
10262 switch (op[2] & 0x00)
10267 /** 1111 1101 0110 111i mmmm rdst rotl #%1, %0 */
10268 #line 706 "rx-decode.opc"
10269 int i AU = op[1] & 0x01;
10270 #line 706 "rx-decode.opc"
10271 int mmmm AU = (op[2] >> 4) & 0x0f;
10272 #line 706 "rx-decode.opc"
10273 int rdst AU = op[2] & 0x0f;
10276 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10277 "/** 1111 1101 0110 111i mmmm rdst rotl #%1, %0 */",
10278 op[0], op[1], op[2]);
10279 printf (" i = 0x%x,", i);
10280 printf (" mmmm = 0x%x,", mmmm);
10281 printf (" rdst = 0x%x\n", rdst);
10283 SYNTAX("rotl #%1, %0");
10284 #line 706 "rx-decode.opc"
10285 ID(rotl); SC(i*16+mmmm); DR(rdst); F__SZC;
10293 switch (op[2] & 0x00)
10296 goto op_semantics_77;
10302 switch (op[2] & 0xf0)
10307 /** 1111 1101 0111 im00 0010rdst adc #%1, %0 */
10308 #line 488 "rx-decode.opc"
10309 int im AU = (op[1] >> 2) & 0x03;
10310 #line 488 "rx-decode.opc"
10311 int rdst AU = op[2] & 0x0f;
10314 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10315 "/** 1111 1101 0111 im00 0010rdst adc #%1, %0 */",
10316 op[0], op[1], op[2]);
10317 printf (" im = 0x%x,", im);
10318 printf (" rdst = 0x%x\n", rdst);
10320 SYNTAX("adc #%1, %0");
10321 #line 488 "rx-decode.opc"
10322 ID(adc); SC(IMMex(im)); DR(rdst); F_OSZC;
10329 /** 1111 1101 0111 im00 0100rdst max #%1, %0 */
10330 #line 570 "rx-decode.opc"
10331 int im AU = (op[1] >> 2) & 0x03;
10332 #line 570 "rx-decode.opc"
10333 int rdst AU = op[2] & 0x0f;
10336 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10337 "/** 1111 1101 0111 im00 0100rdst max #%1, %0 */",
10338 op[0], op[1], op[2]);
10339 printf (" im = 0x%x,", im);
10340 printf (" rdst = 0x%x\n", rdst);
10342 SYNTAX("max #%1, %0");
10343 #line 570 "rx-decode.opc"
10344 ID(max); DR(rdst); SC(IMMex(im));
10351 /** 1111 1101 0111 im00 0101rdst min #%1, %0 */
10352 #line 590 "rx-decode.opc"
10353 int im AU = (op[1] >> 2) & 0x03;
10354 #line 590 "rx-decode.opc"
10355 int rdst AU = op[2] & 0x0f;
10358 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10359 "/** 1111 1101 0111 im00 0101rdst min #%1, %0 */",
10360 op[0], op[1], op[2]);
10361 printf (" im = 0x%x,", im);
10362 printf (" rdst = 0x%x\n", rdst);
10364 SYNTAX("min #%1, %0");
10365 #line 590 "rx-decode.opc"
10366 ID(min); DR(rdst); SC(IMMex(im));
10373 /** 1111 1101 0111 im00 0110rdst emul #%1, %0 */
10374 #line 620 "rx-decode.opc"
10375 int im AU = (op[1] >> 2) & 0x03;
10376 #line 620 "rx-decode.opc"
10377 int rdst AU = op[2] & 0x0f;
10380 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10381 "/** 1111 1101 0111 im00 0110rdst emul #%1, %0 */",
10382 op[0], op[1], op[2]);
10383 printf (" im = 0x%x,", im);
10384 printf (" rdst = 0x%x\n", rdst);
10386 SYNTAX("emul #%1, %0");
10387 #line 620 "rx-decode.opc"
10388 ID(emul); DR(rdst); SC(IMMex(im));
10395 /** 1111 1101 0111 im00 0111rdst emulu #%1, %0 */
10396 #line 632 "rx-decode.opc"
10397 int im AU = (op[1] >> 2) & 0x03;
10398 #line 632 "rx-decode.opc"
10399 int rdst AU = op[2] & 0x0f;
10402 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10403 "/** 1111 1101 0111 im00 0111rdst emulu #%1, %0 */",
10404 op[0], op[1], op[2]);
10405 printf (" im = 0x%x,", im);
10406 printf (" rdst = 0x%x\n", rdst);
10408 SYNTAX("emulu #%1, %0");
10409 #line 632 "rx-decode.opc"
10410 ID(emulu); DR(rdst); SC(IMMex(im));
10417 /** 1111 1101 0111 im00 1000rdst div #%1, %0 */
10418 #line 644 "rx-decode.opc"
10419 int im AU = (op[1] >> 2) & 0x03;
10420 #line 644 "rx-decode.opc"
10421 int rdst AU = op[2] & 0x0f;
10424 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10425 "/** 1111 1101 0111 im00 1000rdst div #%1, %0 */",
10426 op[0], op[1], op[2]);
10427 printf (" im = 0x%x,", im);
10428 printf (" rdst = 0x%x\n", rdst);
10430 SYNTAX("div #%1, %0");
10431 #line 644 "rx-decode.opc"
10432 ID(div); DR(rdst); SC(IMMex(im)); F_O___;
10439 /** 1111 1101 0111 im00 1001rdst divu #%1, %0 */
10440 #line 656 "rx-decode.opc"
10441 int im AU = (op[1] >> 2) & 0x03;
10442 #line 656 "rx-decode.opc"
10443 int rdst AU = op[2] & 0x0f;
10446 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10447 "/** 1111 1101 0111 im00 1001rdst divu #%1, %0 */",
10448 op[0], op[1], op[2]);
10449 printf (" im = 0x%x,", im);
10450 printf (" rdst = 0x%x\n", rdst);
10452 SYNTAX("divu #%1, %0");
10453 #line 656 "rx-decode.opc"
10454 ID(divu); DR(rdst); SC(IMMex(im)); F_O___;
10461 /** 1111 1101 0111 im00 1100rdst tst #%1, %2 */
10462 #line 467 "rx-decode.opc"
10463 int im AU = (op[1] >> 2) & 0x03;
10464 #line 467 "rx-decode.opc"
10465 int rdst AU = op[2] & 0x0f;
10468 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10469 "/** 1111 1101 0111 im00 1100rdst tst #%1, %2 */",
10470 op[0], op[1], op[2]);
10471 printf (" im = 0x%x,", im);
10472 printf (" rdst = 0x%x\n", rdst);
10474 SYNTAX("tst #%1, %2");
10475 #line 467 "rx-decode.opc"
10476 ID(and); SC(IMMex(im)); S2R(rdst); F__SZ_;
10483 /** 1111 1101 0111 im00 1101rdst xor #%1, %0 */
10484 #line 446 "rx-decode.opc"
10485 int im AU = (op[1] >> 2) & 0x03;
10486 #line 446 "rx-decode.opc"
10487 int rdst AU = op[2] & 0x0f;
10490 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10491 "/** 1111 1101 0111 im00 1101rdst xor #%1, %0 */",
10492 op[0], op[1], op[2]);
10493 printf (" im = 0x%x,", im);
10494 printf (" rdst = 0x%x\n", rdst);
10496 SYNTAX("xor #%1, %0");
10497 #line 446 "rx-decode.opc"
10498 ID(xor); SC(IMMex(im)); DR(rdst); F__SZ_;
10505 /** 1111 1101 0111 im00 1110rdst stz #%1, %0 */
10506 #line 392 "rx-decode.opc"
10507 int im AU = (op[1] >> 2) & 0x03;
10508 #line 392 "rx-decode.opc"
10509 int rdst AU = op[2] & 0x0f;
10512 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10513 "/** 1111 1101 0111 im00 1110rdst stz #%1, %0 */",
10514 op[0], op[1], op[2]);
10515 printf (" im = 0x%x,", im);
10516 printf (" rdst = 0x%x\n", rdst);
10518 SYNTAX("stz #%1, %0");
10519 #line 392 "rx-decode.opc"
10520 ID(stcc); SC(IMMex(im)); DR(rdst); S2cc(RXC_z);
10527 /** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */
10528 #line 395 "rx-decode.opc"
10529 int im AU = (op[1] >> 2) & 0x03;
10530 #line 395 "rx-decode.opc"
10531 int rdst AU = op[2] & 0x0f;
10534 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10535 "/** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */",
10536 op[0], op[1], op[2]);
10537 printf (" im = 0x%x,", im);
10538 printf (" rdst = 0x%x\n", rdst);
10540 SYNTAX("stnz #%1, %0");
10541 #line 395 "rx-decode.opc"
10542 ID(stcc); SC(IMMex(im)); DR(rdst); S2cc(RXC_nz);
10544 /*----------------------------------------------------------------------*/
10549 default: UNSUPPORTED(); break;
10554 switch (op[2] & 0xf0)
10558 /** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */
10559 #line 864 "rx-decode.opc"
10560 int rdst AU = op[2] & 0x0f;
10563 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10564 "/** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */",
10565 op[0], op[1], op[2]);
10566 printf (" rdst = 0x%x\n", rdst);
10568 SYNTAX("fsub #%1, %0");
10569 #line 864 "rx-decode.opc"
10570 ID(fsub); DR(rdst); SC(IMM(0)); F__SZ_;
10576 /** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */
10577 #line 858 "rx-decode.opc"
10578 int rdst AU = op[2] & 0x0f;
10581 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10582 "/** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */",
10583 op[0], op[1], op[2]);
10584 printf (" rdst = 0x%x\n", rdst);
10586 SYNTAX("fcmp #%1, %0");
10587 #line 858 "rx-decode.opc"
10588 ID(fcmp); DR(rdst); SC(IMM(0)); F_OSZ_;
10594 /** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */
10595 #line 852 "rx-decode.opc"
10596 int rdst AU = op[2] & 0x0f;
10599 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10600 "/** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */",
10601 op[0], op[1], op[2]);
10602 printf (" rdst = 0x%x\n", rdst);
10604 SYNTAX("fadd #%1, %0");
10605 #line 852 "rx-decode.opc"
10606 ID(fadd); DR(rdst); SC(IMM(0)); F__SZ_;
10612 /** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */
10613 #line 873 "rx-decode.opc"
10614 int rdst AU = op[2] & 0x0f;
10617 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10618 "/** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */",
10619 op[0], op[1], op[2]);
10620 printf (" rdst = 0x%x\n", rdst);
10622 SYNTAX("fmul #%1, %0");
10623 #line 873 "rx-decode.opc"
10624 ID(fmul); DR(rdst); SC(IMM(0)); F__SZ_;
10630 /** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */
10631 #line 879 "rx-decode.opc"
10632 int rdst AU = op[2] & 0x0f;
10635 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10636 "/** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */",
10637 op[0], op[1], op[2]);
10638 printf (" rdst = 0x%x\n", rdst);
10640 SYNTAX("fdiv #%1, %0");
10641 #line 879 "rx-decode.opc"
10642 ID(fdiv); DR(rdst); SC(IMM(0)); F__SZ_;
10646 default: UNSUPPORTED(); break;
10651 switch (op[2] & 0xe0)
10656 /** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */
10657 #line 969 "rx-decode.opc"
10658 int im AU = (op[1] >> 2) & 0x03;
10659 #line 969 "rx-decode.opc"
10660 int crdst AU = op[2] & 0x1f;
10663 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10664 "/** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */",
10665 op[0], op[1], op[2]);
10666 printf (" im = 0x%x,", im);
10667 printf (" crdst = 0x%x\n", crdst);
10669 SYNTAX("mvtc #%1, %0");
10670 #line 969 "rx-decode.opc"
10671 ID(mov); SC(IMMex(im)); DR(crdst + 16);
10675 default: UNSUPPORTED(); break;
10680 switch (op[2] & 0xf0)
10683 goto op_semantics_78;
10686 goto op_semantics_79;
10689 goto op_semantics_80;
10692 goto op_semantics_81;
10695 goto op_semantics_82;
10698 goto op_semantics_83;
10701 goto op_semantics_84;
10704 goto op_semantics_85;
10707 goto op_semantics_86;
10710 goto op_semantics_87;
10713 goto op_semantics_88;
10715 default: UNSUPPORTED(); break;
10720 switch (op[2] & 0xe0)
10723 goto op_semantics_89;
10725 default: UNSUPPORTED(); break;
10730 switch (op[2] & 0xf0)
10733 goto op_semantics_78;
10736 goto op_semantics_79;
10739 goto op_semantics_80;
10742 goto op_semantics_81;
10745 goto op_semantics_82;
10748 goto op_semantics_83;
10751 goto op_semantics_84;
10754 goto op_semantics_85;
10757 goto op_semantics_86;
10760 goto op_semantics_87;
10763 goto op_semantics_88;
10765 default: UNSUPPORTED(); break;
10770 switch (op[2] & 0xe0)
10773 goto op_semantics_89;
10775 default: UNSUPPORTED(); break;
10780 switch (op[2] & 0xf0)
10783 goto op_semantics_78;
10786 goto op_semantics_79;
10789 goto op_semantics_80;
10792 goto op_semantics_81;
10795 goto op_semantics_82;
10798 goto op_semantics_83;
10801 goto op_semantics_84;
10804 goto op_semantics_85;
10807 goto op_semantics_86;
10810 goto op_semantics_87;
10813 goto op_semantics_88;
10815 default: UNSUPPORTED(); break;
10820 switch (op[2] & 0xe0)
10823 goto op_semantics_89;
10825 default: UNSUPPORTED(); break;
10830 switch (op[2] & 0x00)
10835 /** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */
10836 #line 694 "rx-decode.opc"
10837 int immmm AU = op[1] & 0x1f;
10838 #line 694 "rx-decode.opc"
10839 int rsrc AU = (op[2] >> 4) & 0x0f;
10840 #line 694 "rx-decode.opc"
10841 int rdst AU = op[2] & 0x0f;
10844 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10845 "/** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */",
10846 op[0], op[1], op[2]);
10847 printf (" immmm = 0x%x,", immmm);
10848 printf (" rsrc = 0x%x,", rsrc);
10849 printf (" rdst = 0x%x\n", rdst);
10851 SYNTAX("shlr #%2, %1, %0");
10852 #line 694 "rx-decode.opc"
10853 ID(shlr); S2C(immmm); SR(rsrc); DR(rdst); F__SZC;
10855 /*----------------------------------------------------------------------*/
10864 switch (op[2] & 0x00)
10867 goto op_semantics_90;
10873 switch (op[2] & 0x00)
10876 goto op_semantics_90;
10882 switch (op[2] & 0x00)
10885 goto op_semantics_90;
10891 switch (op[2] & 0x00)
10894 goto op_semantics_90;
10900 switch (op[2] & 0x00)
10903 goto op_semantics_90;
10909 switch (op[2] & 0x00)
10912 goto op_semantics_90;
10918 switch (op[2] & 0x00)
10921 goto op_semantics_90;
10927 switch (op[2] & 0x00)
10930 goto op_semantics_90;
10936 switch (op[2] & 0x00)
10939 goto op_semantics_90;
10945 switch (op[2] & 0x00)
10948 goto op_semantics_90;
10954 switch (op[2] & 0x00)
10957 goto op_semantics_90;
10963 switch (op[2] & 0x00)
10966 goto op_semantics_90;
10972 switch (op[2] & 0x00)
10975 goto op_semantics_90;
10981 switch (op[2] & 0x00)
10984 goto op_semantics_90;
10990 switch (op[2] & 0x00)
10993 goto op_semantics_90;
10999 switch (op[2] & 0x00)
11002 goto op_semantics_90;
11008 switch (op[2] & 0x00)
11011 goto op_semantics_90;
11017 switch (op[2] & 0x00)
11020 goto op_semantics_90;
11026 switch (op[2] & 0x00)
11029 goto op_semantics_90;
11035 switch (op[2] & 0x00)
11038 goto op_semantics_90;
11044 switch (op[2] & 0x00)
11047 goto op_semantics_90;
11053 switch (op[2] & 0x00)
11056 goto op_semantics_90;
11062 switch (op[2] & 0x00)
11065 goto op_semantics_90;
11071 switch (op[2] & 0x00)
11074 goto op_semantics_90;
11080 switch (op[2] & 0x00)
11083 goto op_semantics_90;
11089 switch (op[2] & 0x00)
11092 goto op_semantics_90;
11098 switch (op[2] & 0x00)
11101 goto op_semantics_90;
11107 switch (op[2] & 0x00)
11110 goto op_semantics_90;
11116 switch (op[2] & 0x00)
11119 goto op_semantics_90;
11125 switch (op[2] & 0x00)
11128 goto op_semantics_90;
11134 switch (op[2] & 0x00)
11137 goto op_semantics_90;
11143 switch (op[2] & 0x00)
11148 /** 1111 1101 101immmm rsrc rdst shar #%2, %1, %0 */
11149 #line 684 "rx-decode.opc"
11150 int immmm AU = op[1] & 0x1f;
11151 #line 684 "rx-decode.opc"
11152 int rsrc AU = (op[2] >> 4) & 0x0f;
11153 #line 684 "rx-decode.opc"
11154 int rdst AU = op[2] & 0x0f;
11157 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11158 "/** 1111 1101 101immmm rsrc rdst shar #%2, %1, %0 */",
11159 op[0], op[1], op[2]);
11160 printf (" immmm = 0x%x,", immmm);
11161 printf (" rsrc = 0x%x,", rsrc);
11162 printf (" rdst = 0x%x\n", rdst);
11164 SYNTAX("shar #%2, %1, %0");
11165 #line 684 "rx-decode.opc"
11166 ID(shar); S2C(immmm); SR(rsrc); DR(rdst); F_0SZC;
11175 switch (op[2] & 0x00)
11178 goto op_semantics_91;
11184 switch (op[2] & 0x00)
11187 goto op_semantics_91;
11193 switch (op[2] & 0x00)
11196 goto op_semantics_91;
11202 switch (op[2] & 0x00)
11205 goto op_semantics_91;
11211 switch (op[2] & 0x00)
11214 goto op_semantics_91;
11220 switch (op[2] & 0x00)
11223 goto op_semantics_91;
11229 switch (op[2] & 0x00)
11232 goto op_semantics_91;
11238 switch (op[2] & 0x00)
11241 goto op_semantics_91;
11247 switch (op[2] & 0x00)
11250 goto op_semantics_91;
11256 switch (op[2] & 0x00)
11259 goto op_semantics_91;
11265 switch (op[2] & 0x00)
11268 goto op_semantics_91;
11274 switch (op[2] & 0x00)
11277 goto op_semantics_91;
11283 switch (op[2] & 0x00)
11286 goto op_semantics_91;
11292 switch (op[2] & 0x00)
11295 goto op_semantics_91;
11301 switch (op[2] & 0x00)
11304 goto op_semantics_91;
11310 switch (op[2] & 0x00)
11313 goto op_semantics_91;
11319 switch (op[2] & 0x00)
11322 goto op_semantics_91;
11328 switch (op[2] & 0x00)
11331 goto op_semantics_91;
11337 switch (op[2] & 0x00)
11340 goto op_semantics_91;
11346 switch (op[2] & 0x00)
11349 goto op_semantics_91;
11355 switch (op[2] & 0x00)
11358 goto op_semantics_91;
11364 switch (op[2] & 0x00)
11367 goto op_semantics_91;
11373 switch (op[2] & 0x00)
11376 goto op_semantics_91;
11382 switch (op[2] & 0x00)
11385 goto op_semantics_91;
11391 switch (op[2] & 0x00)
11394 goto op_semantics_91;
11400 switch (op[2] & 0x00)
11403 goto op_semantics_91;
11409 switch (op[2] & 0x00)
11412 goto op_semantics_91;
11418 switch (op[2] & 0x00)
11421 goto op_semantics_91;
11427 switch (op[2] & 0x00)
11430 goto op_semantics_91;
11436 switch (op[2] & 0x00)
11439 goto op_semantics_91;
11445 switch (op[2] & 0x00)
11448 goto op_semantics_91;
11454 switch (op[2] & 0x00)
11459 /** 1111 1101 110immmm rsrc rdst shll #%2, %1, %0 */
11460 #line 674 "rx-decode.opc"
11461 int immmm AU = op[1] & 0x1f;
11462 #line 674 "rx-decode.opc"
11463 int rsrc AU = (op[2] >> 4) & 0x0f;
11464 #line 674 "rx-decode.opc"
11465 int rdst AU = op[2] & 0x0f;
11468 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11469 "/** 1111 1101 110immmm rsrc rdst shll #%2, %1, %0 */",
11470 op[0], op[1], op[2]);
11471 printf (" immmm = 0x%x,", immmm);
11472 printf (" rsrc = 0x%x,", rsrc);
11473 printf (" rdst = 0x%x\n", rdst);
11475 SYNTAX("shll #%2, %1, %0");
11476 #line 674 "rx-decode.opc"
11477 ID(shll); S2C(immmm); SR(rsrc); DR(rdst); F_OSZC;
11486 switch (op[2] & 0x00)
11489 goto op_semantics_92;
11495 switch (op[2] & 0x00)
11498 goto op_semantics_92;
11504 switch (op[2] & 0x00)
11507 goto op_semantics_92;
11513 switch (op[2] & 0x00)
11516 goto op_semantics_92;
11522 switch (op[2] & 0x00)
11525 goto op_semantics_92;
11531 switch (op[2] & 0x00)
11534 goto op_semantics_92;
11540 switch (op[2] & 0x00)
11543 goto op_semantics_92;
11549 switch (op[2] & 0x00)
11552 goto op_semantics_92;
11558 switch (op[2] & 0x00)
11561 goto op_semantics_92;
11567 switch (op[2] & 0x00)
11570 goto op_semantics_92;
11576 switch (op[2] & 0x00)
11579 goto op_semantics_92;
11585 switch (op[2] & 0x00)
11588 goto op_semantics_92;
11594 switch (op[2] & 0x00)
11597 goto op_semantics_92;
11603 switch (op[2] & 0x00)
11606 goto op_semantics_92;
11612 switch (op[2] & 0x00)
11615 goto op_semantics_92;
11621 switch (op[2] & 0x00)
11624 goto op_semantics_92;
11630 switch (op[2] & 0x00)
11633 goto op_semantics_92;
11639 switch (op[2] & 0x00)
11642 goto op_semantics_92;
11648 switch (op[2] & 0x00)
11651 goto op_semantics_92;
11657 switch (op[2] & 0x00)
11660 goto op_semantics_92;
11666 switch (op[2] & 0x00)
11669 goto op_semantics_92;
11675 switch (op[2] & 0x00)
11678 goto op_semantics_92;
11684 switch (op[2] & 0x00)
11687 goto op_semantics_92;
11693 switch (op[2] & 0x00)
11696 goto op_semantics_92;
11702 switch (op[2] & 0x00)
11705 goto op_semantics_92;
11711 switch (op[2] & 0x00)
11714 goto op_semantics_92;
11720 switch (op[2] & 0x00)
11723 goto op_semantics_92;
11729 switch (op[2] & 0x00)
11732 goto op_semantics_92;
11738 switch (op[2] & 0x00)
11741 goto op_semantics_92;
11747 switch (op[2] & 0x00)
11750 goto op_semantics_92;
11756 switch (op[2] & 0x00)
11759 goto op_semantics_92;
11765 switch (op[2] & 0xf0)
11784 /** 1111 1101 111 bittt cond rdst bm%2 #%1, %0%S0 */
11785 #line 948 "rx-decode.opc"
11786 int bittt AU = op[1] & 0x1f;
11787 #line 948 "rx-decode.opc"
11788 int cond AU = (op[2] >> 4) & 0x0f;
11789 #line 948 "rx-decode.opc"
11790 int rdst AU = op[2] & 0x0f;
11793 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11794 "/** 1111 1101 111 bittt cond rdst bm%2 #%1, %0%S0 */",
11795 op[0], op[1], op[2]);
11796 printf (" bittt = 0x%x,", bittt);
11797 printf (" cond = 0x%x,", cond);
11798 printf (" rdst = 0x%x\n", rdst);
11800 SYNTAX("bm%2 #%1, %0%S0");
11801 #line 948 "rx-decode.opc"
11802 ID(bmcc); BWL(LSIZE); S2cc(cond); SC(bittt); DR(rdst);
11804 /*----------------------------------------------------------------------*/
11805 /* CONTROL REGISTERS */
11812 /** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */
11813 #line 941 "rx-decode.opc"
11814 int bittt AU = op[1] & 0x1f;
11815 #line 941 "rx-decode.opc"
11816 int rdst AU = op[2] & 0x0f;
11819 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11820 "/** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */",
11821 op[0], op[1], op[2]);
11822 printf (" bittt = 0x%x,", bittt);
11823 printf (" rdst = 0x%x\n", rdst);
11825 SYNTAX("bnot #%1, %0");
11826 #line 941 "rx-decode.opc"
11827 ID(bnot); BWL(LSIZE); SC(bittt); DR(rdst);
11836 switch (op[2] & 0xf0)
11853 goto op_semantics_93;
11856 goto op_semantics_94;
11862 switch (op[2] & 0xf0)
11879 goto op_semantics_93;
11882 goto op_semantics_94;
11888 switch (op[2] & 0xf0)
11905 goto op_semantics_93;
11908 goto op_semantics_94;
11914 switch (op[2] & 0xf0)
11931 goto op_semantics_93;
11934 goto op_semantics_94;
11940 switch (op[2] & 0xf0)
11957 goto op_semantics_93;
11960 goto op_semantics_94;
11966 switch (op[2] & 0xf0)
11983 goto op_semantics_93;
11986 goto op_semantics_94;
11992 switch (op[2] & 0xf0)
12009 goto op_semantics_93;
12012 goto op_semantics_94;
12018 switch (op[2] & 0xf0)
12035 goto op_semantics_93;
12038 goto op_semantics_94;
12044 switch (op[2] & 0xf0)
12061 goto op_semantics_93;
12064 goto op_semantics_94;
12070 switch (op[2] & 0xf0)
12087 goto op_semantics_93;
12090 goto op_semantics_94;
12096 switch (op[2] & 0xf0)
12113 goto op_semantics_93;
12116 goto op_semantics_94;
12122 switch (op[2] & 0xf0)
12139 goto op_semantics_93;
12142 goto op_semantics_94;
12148 switch (op[2] & 0xf0)
12165 goto op_semantics_93;
12168 goto op_semantics_94;
12174 switch (op[2] & 0xf0)
12191 goto op_semantics_93;
12194 goto op_semantics_94;
12200 switch (op[2] & 0xf0)
12217 goto op_semantics_93;
12220 goto op_semantics_94;
12226 switch (op[2] & 0xf0)
12243 goto op_semantics_93;
12246 goto op_semantics_94;
12252 switch (op[2] & 0xf0)
12269 goto op_semantics_93;
12272 goto op_semantics_94;
12278 switch (op[2] & 0xf0)
12295 goto op_semantics_93;
12298 goto op_semantics_94;
12304 switch (op[2] & 0xf0)
12321 goto op_semantics_93;
12324 goto op_semantics_94;
12330 switch (op[2] & 0xf0)
12347 goto op_semantics_93;
12350 goto op_semantics_94;
12356 switch (op[2] & 0xf0)
12373 goto op_semantics_93;
12376 goto op_semantics_94;
12382 switch (op[2] & 0xf0)
12399 goto op_semantics_93;
12402 goto op_semantics_94;
12408 switch (op[2] & 0xf0)
12425 goto op_semantics_93;
12428 goto op_semantics_94;
12434 switch (op[2] & 0xf0)
12451 goto op_semantics_93;
12454 goto op_semantics_94;
12460 switch (op[2] & 0xf0)
12477 goto op_semantics_93;
12480 goto op_semantics_94;
12486 switch (op[2] & 0xf0)
12503 goto op_semantics_93;
12506 goto op_semantics_94;
12512 switch (op[2] & 0xf0)
12529 goto op_semantics_93;
12532 goto op_semantics_94;
12538 switch (op[2] & 0xf0)
12555 goto op_semantics_93;
12558 goto op_semantics_94;
12564 switch (op[2] & 0xf0)
12581 goto op_semantics_93;
12584 goto op_semantics_94;
12590 switch (op[2] & 0xf0)
12607 goto op_semantics_93;
12610 goto op_semantics_94;
12616 switch (op[2] & 0xf0)
12633 goto op_semantics_93;
12636 goto op_semantics_94;
12640 default: UNSUPPORTED(); break;
12645 switch (op[1] & 0xff)
12649 switch (op[2] & 0x00)
12654 /** 1111 1110 00sz isrc bsrc rdst mov%s %0, [%1, %2] */
12655 #line 338 "rx-decode.opc"
12656 int sz AU = (op[1] >> 4) & 0x03;
12657 #line 338 "rx-decode.opc"
12658 int isrc AU = op[1] & 0x0f;
12659 #line 338 "rx-decode.opc"
12660 int bsrc AU = (op[2] >> 4) & 0x0f;
12661 #line 338 "rx-decode.opc"
12662 int rdst AU = op[2] & 0x0f;
12665 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
12666 "/** 1111 1110 00sz isrc bsrc rdst mov%s %0, [%1, %2] */",
12667 op[0], op[1], op[2]);
12668 printf (" sz = 0x%x,", sz);
12669 printf (" isrc = 0x%x,", isrc);
12670 printf (" bsrc = 0x%x,", bsrc);
12671 printf (" rdst = 0x%x\n", rdst);
12673 SYNTAX("mov%s %0, [%1, %2]");
12674 #line 338 "rx-decode.opc"
12675 ID(movbir); sBWL(sz); DR(rdst); SRR(isrc); S2R(bsrc); F_____;
12683 switch (op[2] & 0x00)
12686 goto op_semantics_95;
12692 switch (op[2] & 0x00)
12695 goto op_semantics_95;
12701 switch (op[2] & 0x00)
12704 goto op_semantics_95;
12710 switch (op[2] & 0x00)
12713 goto op_semantics_95;
12719 switch (op[2] & 0x00)
12722 goto op_semantics_95;
12728 switch (op[2] & 0x00)
12731 goto op_semantics_95;
12737 switch (op[2] & 0x00)
12740 goto op_semantics_95;
12746 switch (op[2] & 0x00)
12749 goto op_semantics_95;
12755 switch (op[2] & 0x00)
12758 goto op_semantics_95;
12764 switch (op[2] & 0x00)
12767 goto op_semantics_95;
12773 switch (op[2] & 0x00)
12776 goto op_semantics_95;
12782 switch (op[2] & 0x00)
12785 goto op_semantics_95;
12791 switch (op[2] & 0x00)
12794 goto op_semantics_95;
12800 switch (op[2] & 0x00)
12803 goto op_semantics_95;
12809 switch (op[2] & 0x00)
12812 goto op_semantics_95;
12818 switch (op[2] & 0x00)
12821 goto op_semantics_95;
12827 switch (op[2] & 0x00)
12830 goto op_semantics_95;
12836 switch (op[2] & 0x00)
12839 goto op_semantics_95;
12845 switch (op[2] & 0x00)
12848 goto op_semantics_95;
12854 switch (op[2] & 0x00)
12857 goto op_semantics_95;
12863 switch (op[2] & 0x00)
12866 goto op_semantics_95;
12872 switch (op[2] & 0x00)
12875 goto op_semantics_95;
12881 switch (op[2] & 0x00)
12884 goto op_semantics_95;
12890 switch (op[2] & 0x00)
12893 goto op_semantics_95;
12899 switch (op[2] & 0x00)
12902 goto op_semantics_95;
12908 switch (op[2] & 0x00)
12911 goto op_semantics_95;
12917 switch (op[2] & 0x00)
12920 goto op_semantics_95;
12926 switch (op[2] & 0x00)
12929 goto op_semantics_95;
12935 switch (op[2] & 0x00)
12938 goto op_semantics_95;
12944 switch (op[2] & 0x00)
12947 goto op_semantics_95;
12953 switch (op[2] & 0x00)
12956 goto op_semantics_95;
12962 switch (op[2] & 0x00)
12965 goto op_semantics_95;
12971 switch (op[2] & 0x00)
12974 goto op_semantics_95;
12980 switch (op[2] & 0x00)
12983 goto op_semantics_95;
12989 switch (op[2] & 0x00)
12992 goto op_semantics_95;
12998 switch (op[2] & 0x00)
13001 goto op_semantics_95;
13007 switch (op[2] & 0x00)
13010 goto op_semantics_95;
13016 switch (op[2] & 0x00)
13019 goto op_semantics_95;
13025 switch (op[2] & 0x00)
13028 goto op_semantics_95;
13034 switch (op[2] & 0x00)
13037 goto op_semantics_95;
13043 switch (op[2] & 0x00)
13046 goto op_semantics_95;
13052 switch (op[2] & 0x00)
13055 goto op_semantics_95;
13061 switch (op[2] & 0x00)
13064 goto op_semantics_95;
13070 switch (op[2] & 0x00)
13073 goto op_semantics_95;
13079 switch (op[2] & 0x00)
13082 goto op_semantics_95;
13088 switch (op[2] & 0x00)
13091 goto op_semantics_95;
13097 switch (op[2] & 0x00)
13100 goto op_semantics_95;
13106 switch (op[2] & 0x00)
13111 /** 1111 1110 01sz isrc bsrc rdst mov%s [%1, %2], %0 */
13112 #line 335 "rx-decode.opc"
13113 int sz AU = (op[1] >> 4) & 0x03;
13114 #line 335 "rx-decode.opc"
13115 int isrc AU = op[1] & 0x0f;
13116 #line 335 "rx-decode.opc"
13117 int bsrc AU = (op[2] >> 4) & 0x0f;
13118 #line 335 "rx-decode.opc"
13119 int rdst AU = op[2] & 0x0f;
13122 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
13123 "/** 1111 1110 01sz isrc bsrc rdst mov%s [%1, %2], %0 */",
13124 op[0], op[1], op[2]);
13125 printf (" sz = 0x%x,", sz);
13126 printf (" isrc = 0x%x,", isrc);
13127 printf (" bsrc = 0x%x,", bsrc);
13128 printf (" rdst = 0x%x\n", rdst);
13130 SYNTAX("mov%s [%1, %2], %0");
13131 #line 335 "rx-decode.opc"
13132 ID(movbi); sBWL(sz); DR(rdst); SRR(isrc); S2R(bsrc); F_____;
13140 switch (op[2] & 0x00)
13143 goto op_semantics_96;
13149 switch (op[2] & 0x00)
13152 goto op_semantics_96;
13158 switch (op[2] & 0x00)
13161 goto op_semantics_96;
13167 switch (op[2] & 0x00)
13170 goto op_semantics_96;
13176 switch (op[2] & 0x00)
13179 goto op_semantics_96;
13185 switch (op[2] & 0x00)
13188 goto op_semantics_96;
13194 switch (op[2] & 0x00)
13197 goto op_semantics_96;
13203 switch (op[2] & 0x00)
13206 goto op_semantics_96;
13212 switch (op[2] & 0x00)
13215 goto op_semantics_96;
13221 switch (op[2] & 0x00)
13224 goto op_semantics_96;
13230 switch (op[2] & 0x00)
13233 goto op_semantics_96;
13239 switch (op[2] & 0x00)
13242 goto op_semantics_96;
13248 switch (op[2] & 0x00)
13251 goto op_semantics_96;
13257 switch (op[2] & 0x00)
13260 goto op_semantics_96;
13266 switch (op[2] & 0x00)
13269 goto op_semantics_96;
13275 switch (op[2] & 0x00)
13278 goto op_semantics_96;
13284 switch (op[2] & 0x00)
13287 goto op_semantics_96;
13293 switch (op[2] & 0x00)
13296 goto op_semantics_96;
13302 switch (op[2] & 0x00)
13305 goto op_semantics_96;
13311 switch (op[2] & 0x00)
13314 goto op_semantics_96;
13320 switch (op[2] & 0x00)
13323 goto op_semantics_96;
13329 switch (op[2] & 0x00)
13332 goto op_semantics_96;
13338 switch (op[2] & 0x00)
13341 goto op_semantics_96;
13347 switch (op[2] & 0x00)
13350 goto op_semantics_96;
13356 switch (op[2] & 0x00)
13359 goto op_semantics_96;
13365 switch (op[2] & 0x00)
13368 goto op_semantics_96;
13374 switch (op[2] & 0x00)
13377 goto op_semantics_96;
13383 switch (op[2] & 0x00)
13386 goto op_semantics_96;
13392 switch (op[2] & 0x00)
13395 goto op_semantics_96;
13401 switch (op[2] & 0x00)
13404 goto op_semantics_96;
13410 switch (op[2] & 0x00)
13413 goto op_semantics_96;
13419 switch (op[2] & 0x00)
13422 goto op_semantics_96;
13428 switch (op[2] & 0x00)
13431 goto op_semantics_96;
13437 switch (op[2] & 0x00)
13440 goto op_semantics_96;
13446 switch (op[2] & 0x00)
13449 goto op_semantics_96;
13455 switch (op[2] & 0x00)
13458 goto op_semantics_96;
13464 switch (op[2] & 0x00)
13467 goto op_semantics_96;
13473 switch (op[2] & 0x00)
13476 goto op_semantics_96;
13482 switch (op[2] & 0x00)
13485 goto op_semantics_96;
13491 switch (op[2] & 0x00)
13494 goto op_semantics_96;
13500 switch (op[2] & 0x00)
13503 goto op_semantics_96;
13509 switch (op[2] & 0x00)
13512 goto op_semantics_96;
13518 switch (op[2] & 0x00)
13521 goto op_semantics_96;
13527 switch (op[2] & 0x00)
13530 goto op_semantics_96;
13536 switch (op[2] & 0x00)
13539 goto op_semantics_96;
13545 switch (op[2] & 0x00)
13548 goto op_semantics_96;
13554 switch (op[2] & 0x00)
13557 goto op_semantics_96;
13563 switch (op[2] & 0x00)
13568 /** 1111 1110 11sz isrc bsrc rdst movu%s [%1, %2], %0 */
13569 #line 341 "rx-decode.opc"
13570 int sz AU = (op[1] >> 4) & 0x03;
13571 #line 341 "rx-decode.opc"
13572 int isrc AU = op[1] & 0x0f;
13573 #line 341 "rx-decode.opc"
13574 int bsrc AU = (op[2] >> 4) & 0x0f;
13575 #line 341 "rx-decode.opc"
13576 int rdst AU = op[2] & 0x0f;
13579 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
13580 "/** 1111 1110 11sz isrc bsrc rdst movu%s [%1, %2], %0 */",
13581 op[0], op[1], op[2]);
13582 printf (" sz = 0x%x,", sz);
13583 printf (" isrc = 0x%x,", isrc);
13584 printf (" bsrc = 0x%x,", bsrc);
13585 printf (" rdst = 0x%x\n", rdst);
13587 SYNTAX("movu%s [%1, %2], %0");
13588 #line 341 "rx-decode.opc"
13589 ID(movbi); uBWL(sz); DR(rdst); SRR(isrc); S2R(bsrc); F_____;
13597 switch (op[2] & 0x00)
13600 goto op_semantics_97;
13606 switch (op[2] & 0x00)
13609 goto op_semantics_97;
13615 switch (op[2] & 0x00)
13618 goto op_semantics_97;
13624 switch (op[2] & 0x00)
13627 goto op_semantics_97;
13633 switch (op[2] & 0x00)
13636 goto op_semantics_97;
13642 switch (op[2] & 0x00)
13645 goto op_semantics_97;
13651 switch (op[2] & 0x00)
13654 goto op_semantics_97;
13660 switch (op[2] & 0x00)
13663 goto op_semantics_97;
13669 switch (op[2] & 0x00)
13672 goto op_semantics_97;
13678 switch (op[2] & 0x00)
13681 goto op_semantics_97;
13687 switch (op[2] & 0x00)
13690 goto op_semantics_97;
13696 switch (op[2] & 0x00)
13699 goto op_semantics_97;
13705 switch (op[2] & 0x00)
13708 goto op_semantics_97;
13714 switch (op[2] & 0x00)
13717 goto op_semantics_97;
13723 switch (op[2] & 0x00)
13726 goto op_semantics_97;
13732 switch (op[2] & 0x00)
13735 goto op_semantics_97;
13741 switch (op[2] & 0x00)
13744 goto op_semantics_97;
13750 switch (op[2] & 0x00)
13753 goto op_semantics_97;
13759 switch (op[2] & 0x00)
13762 goto op_semantics_97;
13768 switch (op[2] & 0x00)
13771 goto op_semantics_97;
13777 switch (op[2] & 0x00)
13780 goto op_semantics_97;
13786 switch (op[2] & 0x00)
13789 goto op_semantics_97;
13795 switch (op[2] & 0x00)
13798 goto op_semantics_97;
13804 switch (op[2] & 0x00)
13807 goto op_semantics_97;
13813 switch (op[2] & 0x00)
13816 goto op_semantics_97;
13822 switch (op[2] & 0x00)
13825 goto op_semantics_97;
13831 switch (op[2] & 0x00)
13834 goto op_semantics_97;
13840 switch (op[2] & 0x00)
13843 goto op_semantics_97;
13849 switch (op[2] & 0x00)
13852 goto op_semantics_97;
13858 switch (op[2] & 0x00)
13861 goto op_semantics_97;
13867 switch (op[2] & 0x00)
13870 goto op_semantics_97;
13876 switch (op[2] & 0x00)
13879 goto op_semantics_97;
13885 switch (op[2] & 0x00)
13888 goto op_semantics_97;
13894 switch (op[2] & 0x00)
13897 goto op_semantics_97;
13903 switch (op[2] & 0x00)
13906 goto op_semantics_97;
13912 switch (op[2] & 0x00)
13915 goto op_semantics_97;
13921 switch (op[2] & 0x00)
13924 goto op_semantics_97;
13930 switch (op[2] & 0x00)
13933 goto op_semantics_97;
13939 switch (op[2] & 0x00)
13942 goto op_semantics_97;
13948 switch (op[2] & 0x00)
13951 goto op_semantics_97;
13957 switch (op[2] & 0x00)
13960 goto op_semantics_97;
13966 switch (op[2] & 0x00)
13969 goto op_semantics_97;
13975 switch (op[2] & 0x00)
13978 goto op_semantics_97;
13984 switch (op[2] & 0x00)
13987 goto op_semantics_97;
13993 switch (op[2] & 0x00)
13996 goto op_semantics_97;
14002 switch (op[2] & 0x00)
14005 goto op_semantics_97;
14011 switch (op[2] & 0x00)
14014 goto op_semantics_97;
14018 default: UNSUPPORTED(); break;
14023 switch (op[1] & 0xff)
14027 switch (op[2] & 0x00)
14032 /** 1111 1111 0000 rdst srca srcb sub %2, %1, %0 */
14033 #line 545 "rx-decode.opc"
14034 int rdst AU = op[1] & 0x0f;
14035 #line 545 "rx-decode.opc"
14036 int srca AU = (op[2] >> 4) & 0x0f;
14037 #line 545 "rx-decode.opc"
14038 int srcb AU = op[2] & 0x0f;
14041 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14042 "/** 1111 1111 0000 rdst srca srcb sub %2, %1, %0 */",
14043 op[0], op[1], op[2]);
14044 printf (" rdst = 0x%x,", rdst);
14045 printf (" srca = 0x%x,", srca);
14046 printf (" srcb = 0x%x\n", srcb);
14048 SYNTAX("sub %2, %1, %0");
14049 #line 545 "rx-decode.opc"
14050 ID(sub); DR(rdst); SR(srcb); S2R(srca); F_OSZC;
14052 /*----------------------------------------------------------------------*/
14061 switch (op[2] & 0x00)
14064 goto op_semantics_98;
14070 switch (op[2] & 0x00)
14073 goto op_semantics_98;
14079 switch (op[2] & 0x00)
14082 goto op_semantics_98;
14088 switch (op[2] & 0x00)
14091 goto op_semantics_98;
14097 switch (op[2] & 0x00)
14100 goto op_semantics_98;
14106 switch (op[2] & 0x00)
14109 goto op_semantics_98;
14115 switch (op[2] & 0x00)
14118 goto op_semantics_98;
14124 switch (op[2] & 0x00)
14127 goto op_semantics_98;
14133 switch (op[2] & 0x00)
14136 goto op_semantics_98;
14142 switch (op[2] & 0x00)
14145 goto op_semantics_98;
14151 switch (op[2] & 0x00)
14154 goto op_semantics_98;
14160 switch (op[2] & 0x00)
14163 goto op_semantics_98;
14169 switch (op[2] & 0x00)
14172 goto op_semantics_98;
14178 switch (op[2] & 0x00)
14181 goto op_semantics_98;
14187 switch (op[2] & 0x00)
14190 goto op_semantics_98;
14196 switch (op[2] & 0x00)
14201 /** 1111 1111 0010 rdst srca srcb add %2, %1, %0 */
14202 #line 512 "rx-decode.opc"
14203 int rdst AU = op[1] & 0x0f;
14204 #line 512 "rx-decode.opc"
14205 int srca AU = (op[2] >> 4) & 0x0f;
14206 #line 512 "rx-decode.opc"
14207 int srcb AU = op[2] & 0x0f;
14210 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14211 "/** 1111 1111 0010 rdst srca srcb add %2, %1, %0 */",
14212 op[0], op[1], op[2]);
14213 printf (" rdst = 0x%x,", rdst);
14214 printf (" srca = 0x%x,", srca);
14215 printf (" srcb = 0x%x\n", srcb);
14217 SYNTAX("add %2, %1, %0");
14218 #line 512 "rx-decode.opc"
14219 ID(add); DR(rdst); SR(srcb); S2R(srca); F_OSZC;
14221 /*----------------------------------------------------------------------*/
14230 switch (op[2] & 0x00)
14233 goto op_semantics_99;
14239 switch (op[2] & 0x00)
14242 goto op_semantics_99;
14248 switch (op[2] & 0x00)
14251 goto op_semantics_99;
14257 switch (op[2] & 0x00)
14260 goto op_semantics_99;
14266 switch (op[2] & 0x00)
14269 goto op_semantics_99;
14275 switch (op[2] & 0x00)
14278 goto op_semantics_99;
14284 switch (op[2] & 0x00)
14287 goto op_semantics_99;
14293 switch (op[2] & 0x00)
14296 goto op_semantics_99;
14302 switch (op[2] & 0x00)
14305 goto op_semantics_99;
14311 switch (op[2] & 0x00)
14314 goto op_semantics_99;
14320 switch (op[2] & 0x00)
14323 goto op_semantics_99;
14329 switch (op[2] & 0x00)
14332 goto op_semantics_99;
14338 switch (op[2] & 0x00)
14341 goto op_semantics_99;
14347 switch (op[2] & 0x00)
14350 goto op_semantics_99;
14356 switch (op[2] & 0x00)
14359 goto op_semantics_99;
14365 switch (op[2] & 0x00)
14370 /** 1111 1111 0011 rdst srca srcb mul %2, %1, %0 */
14371 #line 614 "rx-decode.opc"
14372 int rdst AU = op[1] & 0x0f;
14373 #line 614 "rx-decode.opc"
14374 int srca AU = (op[2] >> 4) & 0x0f;
14375 #line 614 "rx-decode.opc"
14376 int srcb AU = op[2] & 0x0f;
14379 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14380 "/** 1111 1111 0011 rdst srca srcb mul %2, %1, %0 */",
14381 op[0], op[1], op[2]);
14382 printf (" rdst = 0x%x,", rdst);
14383 printf (" srca = 0x%x,", srca);
14384 printf (" srcb = 0x%x\n", srcb);
14386 SYNTAX("mul %2, %1, %0");
14387 #line 614 "rx-decode.opc"
14388 ID(mul); DR(rdst); SR(srcb); S2R(srca); F_____;
14390 /*----------------------------------------------------------------------*/
14399 switch (op[2] & 0x00)
14402 goto op_semantics_100;
14408 switch (op[2] & 0x00)
14411 goto op_semantics_100;
14417 switch (op[2] & 0x00)
14420 goto op_semantics_100;
14426 switch (op[2] & 0x00)
14429 goto op_semantics_100;
14435 switch (op[2] & 0x00)
14438 goto op_semantics_100;
14444 switch (op[2] & 0x00)
14447 goto op_semantics_100;
14453 switch (op[2] & 0x00)
14456 goto op_semantics_100;
14462 switch (op[2] & 0x00)
14465 goto op_semantics_100;
14471 switch (op[2] & 0x00)
14474 goto op_semantics_100;
14480 switch (op[2] & 0x00)
14483 goto op_semantics_100;
14489 switch (op[2] & 0x00)
14492 goto op_semantics_100;
14498 switch (op[2] & 0x00)
14501 goto op_semantics_100;
14507 switch (op[2] & 0x00)
14510 goto op_semantics_100;
14516 switch (op[2] & 0x00)
14519 goto op_semantics_100;
14525 switch (op[2] & 0x00)
14528 goto op_semantics_100;
14534 switch (op[2] & 0x00)
14539 /** 1111 1111 0100 rdst srca srcb and %2, %1, %0 */
14540 #line 422 "rx-decode.opc"
14541 int rdst AU = op[1] & 0x0f;
14542 #line 422 "rx-decode.opc"
14543 int srca AU = (op[2] >> 4) & 0x0f;
14544 #line 422 "rx-decode.opc"
14545 int srcb AU = op[2] & 0x0f;
14548 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14549 "/** 1111 1111 0100 rdst srca srcb and %2, %1, %0 */",
14550 op[0], op[1], op[2]);
14551 printf (" rdst = 0x%x,", rdst);
14552 printf (" srca = 0x%x,", srca);
14553 printf (" srcb = 0x%x\n", srcb);
14555 SYNTAX("and %2, %1, %0");
14556 #line 422 "rx-decode.opc"
14557 ID(and); DR(rdst); SR(srcb); S2R(srca); F__SZ_;
14559 /*----------------------------------------------------------------------*/
14568 switch (op[2] & 0x00)
14571 goto op_semantics_101;
14577 switch (op[2] & 0x00)
14580 goto op_semantics_101;
14586 switch (op[2] & 0x00)
14589 goto op_semantics_101;
14595 switch (op[2] & 0x00)
14598 goto op_semantics_101;
14604 switch (op[2] & 0x00)
14607 goto op_semantics_101;
14613 switch (op[2] & 0x00)
14616 goto op_semantics_101;
14622 switch (op[2] & 0x00)
14625 goto op_semantics_101;
14631 switch (op[2] & 0x00)
14634 goto op_semantics_101;
14640 switch (op[2] & 0x00)
14643 goto op_semantics_101;
14649 switch (op[2] & 0x00)
14652 goto op_semantics_101;
14658 switch (op[2] & 0x00)
14661 goto op_semantics_101;
14667 switch (op[2] & 0x00)
14670 goto op_semantics_101;
14676 switch (op[2] & 0x00)
14679 goto op_semantics_101;
14685 switch (op[2] & 0x00)
14688 goto op_semantics_101;
14694 switch (op[2] & 0x00)
14697 goto op_semantics_101;
14703 switch (op[2] & 0x00)
14708 /** 1111 1111 0101 rdst srca srcb or %2, %1, %0 */
14709 #line 440 "rx-decode.opc"
14710 int rdst AU = op[1] & 0x0f;
14711 #line 440 "rx-decode.opc"
14712 int srca AU = (op[2] >> 4) & 0x0f;
14713 #line 440 "rx-decode.opc"
14714 int srcb AU = op[2] & 0x0f;
14717 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14718 "/** 1111 1111 0101 rdst srca srcb or %2, %1, %0 */",
14719 op[0], op[1], op[2]);
14720 printf (" rdst = 0x%x,", rdst);
14721 printf (" srca = 0x%x,", srca);
14722 printf (" srcb = 0x%x\n", srcb);
14724 SYNTAX("or %2, %1, %0");
14725 #line 440 "rx-decode.opc"
14726 ID(or); DR(rdst); SR(srcb); S2R(srca); F__SZ_;
14728 /*----------------------------------------------------------------------*/
14737 switch (op[2] & 0x00)
14740 goto op_semantics_102;
14746 switch (op[2] & 0x00)
14749 goto op_semantics_102;
14755 switch (op[2] & 0x00)
14758 goto op_semantics_102;
14764 switch (op[2] & 0x00)
14767 goto op_semantics_102;
14773 switch (op[2] & 0x00)
14776 goto op_semantics_102;
14782 switch (op[2] & 0x00)
14785 goto op_semantics_102;
14791 switch (op[2] & 0x00)
14794 goto op_semantics_102;
14800 switch (op[2] & 0x00)
14803 goto op_semantics_102;
14809 switch (op[2] & 0x00)
14812 goto op_semantics_102;
14818 switch (op[2] & 0x00)
14821 goto op_semantics_102;
14827 switch (op[2] & 0x00)
14830 goto op_semantics_102;
14836 switch (op[2] & 0x00)
14839 goto op_semantics_102;
14845 switch (op[2] & 0x00)
14848 goto op_semantics_102;
14854 switch (op[2] & 0x00)
14857 goto op_semantics_102;
14863 switch (op[2] & 0x00)
14866 goto op_semantics_102;
14870 default: UNSUPPORTED(); break;
14873 default: UNSUPPORTED(); break;
14875 #line 1005 "rx-decode.opc"
14877 return rx->n_bytes;