a98de745b108f296087b8e7955cb393550346828
1 #line 1 "rx-decode.opc"
11 #define RX_OPCODE_BIG_ENDIAN 0
15 RX_Opcode_Decoded
* rx
;
16 int (* getbyte
)(void *);
27 /* These are for when the upper bits are "don't care" or "undefined". */
57 #define ID(x) rx->id = RXO_##x
58 #define OP(n,t,r,a) (rx->op[n].type = t, \
60 rx->op[n].addend = a )
61 #define OPs(n,t,r,a,s) (OP (n,t,r,a), \
64 /* This is for the BWL and BW bitfields. */
65 static int SCALE
[] = { 1, 2, 4 };
66 /* This is for the prefix size enum. */
67 static int PSCALE
[] = { 4, 1, 1, 1, 2, 2, 2, 3, 4 };
69 static int flagmap
[] = {0, 1, 2, 3, 0, 0, 0, 0,
70 16, 17, 0, 0, 0, 0, 0, 0 };
72 static int dsp3map
[] = { 8, 9, 10, 3, 4, 5, 6, 7 };
75 *C a constant (immediate) c
77 *I Register indirect, no offset
78 *Is Register indirect, with offset
79 *D standard displacement: type (r,[r],dsp8,dsp16 code), register, BWL code
80 *P standard displacement: type (r,[r]), reg, assumes UByte
81 *Pm memex displacement: type (r,[r]), reg, memex code
82 *cc condition code. */
84 #define DC(c) OP (0, RX_Operand_Immediate, 0, c)
85 #define DR(r) OP (0, RX_Operand_Register, r, 0)
86 #define DI(r,a) OP (0, RX_Operand_Indirect, r, a)
87 #define DIs(r,a,s) OP (0, RX_Operand_Indirect, r, (a) * SCALE[s])
88 #define DD(t,r,s) rx_disp (0, t, r, bwl[s], ld);
89 #define DF(r) OP (0, RX_Operand_Flag, flagmap[r], 0)
91 #define SC(i) OP (1, RX_Operand_Immediate, 0, i)
92 #define SR(r) OP (1, RX_Operand_Register, r, 0)
93 #define SRR(r) OP (1, RX_Operand_TwoReg, r, 0)
94 #define SI(r,a) OP (1, RX_Operand_Indirect, r, a)
95 #define SIs(r,a,s) OP (1, RX_Operand_Indirect, r, (a) * SCALE[s])
96 #define SD(t,r,s) rx_disp (1, t, r, bwl[s], ld);
97 #define SP(t,r) rx_disp (1, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 1);
98 #define SPm(t,r,m) rx_disp (1, t, r, memex[m], ld); rx->op[1].size = memex[m];
99 #define Scc(cc) OP (1, RX_Operand_Condition, cc, 0)
101 #define S2C(i) OP (2, RX_Operand_Immediate, 0, i)
102 #define S2R(r) OP (2, RX_Operand_Register, r, 0)
103 #define S2I(r,a) OP (2, RX_Operand_Indirect, r, a)
104 #define S2Is(r,a,s) OP (2, RX_Operand_Indirect, r, (a) * SCALE[s])
105 #define S2D(t,r,s) rx_disp (2, t, r, bwl[s], ld);
106 #define S2P(t,r) rx_disp (2, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 2);
107 #define S2Pm(t,r,m) rx_disp (2, t, r, memex[m], ld); rx->op[2].size = memex[m];
108 #define S2cc(cc) OP (2, RX_Operand_Condition, cc, 0)
110 #define BWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = bwl[sz]
111 #define sBWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = sbwl[sz]
112 #define uBWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = ubwl[sz]
113 #define P(t, n) rx->op[n].size = (t!=3) ? RX_UByte : RX_Long;
115 #define F(f) store_flags(rx, f)
117 #define AU ATTRIBUTE_UNUSED
118 #define GETBYTE() (ld->op [ld->rx->n_bytes++] = ld->getbyte (ld->ptr))
120 #define SYNTAX(x) rx->syntax = x
122 #define UNSUPPORTED() \
123 rx->syntax = "*unknown*"
125 #define IMM(sf) immediate (sf, 0, ld)
126 #define IMMex(sf) immediate (sf, 1, ld)
129 immediate (int sfield
, int ex
, LocalData
* ld
)
131 unsigned long i
= 0, j
;
135 #define B ((unsigned long) GETBYTE())
137 #if RX_OPCODE_BIG_ENDIAN
139 if (ex
&& (i
& 0x80))
150 if (ex
&& (j
& 0x80))
156 #if RX_OPCODE_BIG_ENDIAN
165 if (ex
&& (i
& 0x800000))
169 #if RX_OPCODE_BIG_ENDIAN
176 if (ex
&& (i
& 0x8000))
181 if (ex
&& (i
& 0x80))
191 rx_disp (int n
, int type
, int reg
, int size
, LocalData
* ld
)
195 ld
->rx
->op
[n
].reg
= reg
;
199 ld
->rx
->op
[n
].type
= RX_Operand_Register
;
202 ld
->rx
->op
[n
].type
= RX_Operand_Indirect
;
203 ld
->rx
->op
[n
].addend
= 0;
206 ld
->rx
->op
[n
].type
= RX_Operand_Indirect
;
208 ld
->rx
->op
[n
].addend
= disp
* PSCALE
[size
];
211 ld
->rx
->op
[n
].type
= RX_Operand_Indirect
;
213 #if RX_OPCODE_BIG_ENDIAN
214 disp
= disp
* 256 + GETBYTE ();
216 disp
= disp
+ GETBYTE () * 256;
218 ld
->rx
->op
[n
].addend
= disp
* PSCALE
[size
];
231 #define F___ZC rx->flags_0 = rx->flags_s = xZ|xC;
232 #define F__SZ_ rx->flags_0 = rx->flags_s = xS|xZ;
233 #define F__SZC rx->flags_0 = rx->flags_s = xS|xZ|xC;
234 #define F_0SZC rx->flags_0 = xO|xS|xZ|xC; rx->flags_s = xS|xZ|xC;
235 #define F_O___ rx->flags_0 = rx->flags_s = xO;
236 #define F_OS__ rx->flags_0 = rx->flags_s = xO|xS;
237 #define F_OSZ_ rx->flags_0 = rx->flags_s = xO|xS|xZ;
238 #define F_OSZC rx->flags_0 = rx->flags_s = xO|xS|xZ|xC;
241 rx_decode_opcode (unsigned long pc AU
,
242 RX_Opcode_Decoded
* rx
,
243 int (* getbyte
)(void *),
246 LocalData lds
, * ld
= &lds
;
247 unsigned char op
[20] = {0};
250 lds
.getbyte
= getbyte
;
254 memset (rx
, 0, sizeof (*rx
));
258 /*----------------------------------------------------------------------*/
262 switch (op
[0] & 0xff)
269 printf ("\033[33m%s\033[0m %02x\n",
270 "/** 0000 0000 brk */",
274 #line 956 "rx-decode.opc"
284 printf ("\033[33m%s\033[0m %02x\n",
285 "/** 0000 0001 dbt */",
289 #line 959 "rx-decode.opc"
299 printf ("\033[33m%s\033[0m %02x\n",
300 "/** 0000 0010 rts */",
304 #line 745 "rx-decode.opc"
307 /*----------------------------------------------------------------------*/
317 printf ("\033[33m%s\033[0m %02x\n",
318 "/** 0000 0011 nop */",
322 #line 751 "rx-decode.opc"
325 /*----------------------------------------------------------------------*/
326 /* STRING FUNCTIONS */
332 /** 0000 0100 bra.a %a0 */
335 printf ("\033[33m%s\033[0m %02x\n",
336 "/** 0000 0100 bra.a %a0 */",
340 #line 723 "rx-decode.opc"
341 ID(branch
); DC(pc
+ IMMex(3));
347 /** 0000 0101 bsr.a %a0 */
350 printf ("\033[33m%s\033[0m %02x\n",
351 "/** 0000 0101 bsr.a %a0 */",
355 #line 739 "rx-decode.opc"
356 ID(jsr
); DC(pc
+ IMMex(3));
362 switch (op
[1] & 0xff)
366 switch (op
[2] & 0x00)
371 /** 0000 0110 mx00 00ss rsrc rdst sub %2%S2, %1 */
372 #line 519 "rx-decode.opc"
373 int mx AU
= (op
[1] >> 6) & 0x03;
374 #line 519 "rx-decode.opc"
375 int ss AU
= op
[1] & 0x03;
376 #line 519 "rx-decode.opc"
377 int rsrc AU
= (op
[2] >> 4) & 0x0f;
378 #line 519 "rx-decode.opc"
379 int rdst AU
= op
[2] & 0x0f;
382 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
383 "/** 0000 0110 mx00 00ss rsrc rdst sub %2%S2, %1 */",
384 op
[0], op
[1], op
[2]);
385 printf (" mx = 0x%x,", mx
);
386 printf (" ss = 0x%x,", ss
);
387 printf (" rsrc = 0x%x,", rsrc
);
388 printf (" rdst = 0x%x\n", rdst
);
390 SYNTAX("sub %2%S2, %1");
391 #line 519 "rx-decode.opc"
392 ID(sub
); S2Pm(ss
, rsrc
, mx
); SR(rdst
); DR(rdst
); F_OSZC
;
400 switch (op
[2] & 0x00)
409 switch (op
[2] & 0x00)
418 switch (op
[2] & 0x00)
427 switch (op
[2] & 0x00)
432 /** 0000 0110 mx00 01ss rsrc rdst cmp %2%S2, %1 */
433 #line 507 "rx-decode.opc"
434 int mx AU
= (op
[1] >> 6) & 0x03;
435 #line 507 "rx-decode.opc"
436 int ss AU
= op
[1] & 0x03;
437 #line 507 "rx-decode.opc"
438 int rsrc AU
= (op
[2] >> 4) & 0x0f;
439 #line 507 "rx-decode.opc"
440 int rdst AU
= op
[2] & 0x0f;
443 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
444 "/** 0000 0110 mx00 01ss rsrc rdst cmp %2%S2, %1 */",
445 op
[0], op
[1], op
[2]);
446 printf (" mx = 0x%x,", mx
);
447 printf (" ss = 0x%x,", ss
);
448 printf (" rsrc = 0x%x,", rsrc
);
449 printf (" rdst = 0x%x\n", rdst
);
451 SYNTAX("cmp %2%S2, %1");
452 #line 507 "rx-decode.opc"
453 ID(sub
); S2Pm(ss
, rsrc
, mx
); SR(rdst
); F_OSZC
;
455 /*----------------------------------------------------------------------*/
464 switch (op
[2] & 0x00)
473 switch (op
[2] & 0x00)
482 switch (op
[2] & 0x00)
491 switch (op
[2] & 0x00)
496 /** 0000 0110 mx00 10ss rsrc rdst add %1%S1, %0 */
497 #line 483 "rx-decode.opc"
498 int mx AU
= (op
[1] >> 6) & 0x03;
499 #line 483 "rx-decode.opc"
500 int ss AU
= op
[1] & 0x03;
501 #line 483 "rx-decode.opc"
502 int rsrc AU
= (op
[2] >> 4) & 0x0f;
503 #line 483 "rx-decode.opc"
504 int rdst AU
= op
[2] & 0x0f;
507 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
508 "/** 0000 0110 mx00 10ss rsrc rdst add %1%S1, %0 */",
509 op
[0], op
[1], op
[2]);
510 printf (" mx = 0x%x,", mx
);
511 printf (" ss = 0x%x,", ss
);
512 printf (" rsrc = 0x%x,", rsrc
);
513 printf (" rdst = 0x%x\n", rdst
);
515 SYNTAX("add %1%S1, %0");
516 #line 483 "rx-decode.opc"
517 ID(add
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_OSZC
;
525 switch (op
[2] & 0x00)
534 switch (op
[2] & 0x00)
543 switch (op
[2] & 0x00)
552 switch (op
[2] & 0x00)
557 /** 0000 0110 mx00 11ss rsrc rdst mul %1%S1, %0 */
558 #line 588 "rx-decode.opc"
559 int mx AU
= (op
[1] >> 6) & 0x03;
560 #line 588 "rx-decode.opc"
561 int ss AU
= op
[1] & 0x03;
562 #line 588 "rx-decode.opc"
563 int rsrc AU
= (op
[2] >> 4) & 0x0f;
564 #line 588 "rx-decode.opc"
565 int rdst AU
= op
[2] & 0x0f;
568 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
569 "/** 0000 0110 mx00 11ss rsrc rdst mul %1%S1, %0 */",
570 op
[0], op
[1], op
[2]);
571 printf (" mx = 0x%x,", mx
);
572 printf (" ss = 0x%x,", ss
);
573 printf (" rsrc = 0x%x,", rsrc
);
574 printf (" rdst = 0x%x\n", rdst
);
576 SYNTAX("mul %1%S1, %0");
577 #line 588 "rx-decode.opc"
578 ID(mul
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_____
;
586 switch (op
[2] & 0x00)
595 switch (op
[2] & 0x00)
604 switch (op
[2] & 0x00)
613 switch (op
[2] & 0x00)
618 /** 0000 0110 mx01 00ss rsrc rdst and %1%S1, %0 */
619 #line 396 "rx-decode.opc"
620 int mx AU
= (op
[1] >> 6) & 0x03;
621 #line 396 "rx-decode.opc"
622 int ss AU
= op
[1] & 0x03;
623 #line 396 "rx-decode.opc"
624 int rsrc AU
= (op
[2] >> 4) & 0x0f;
625 #line 396 "rx-decode.opc"
626 int rdst AU
= op
[2] & 0x0f;
629 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
630 "/** 0000 0110 mx01 00ss rsrc rdst and %1%S1, %0 */",
631 op
[0], op
[1], op
[2]);
632 printf (" mx = 0x%x,", mx
);
633 printf (" ss = 0x%x,", ss
);
634 printf (" rsrc = 0x%x,", rsrc
);
635 printf (" rdst = 0x%x\n", rdst
);
637 SYNTAX("and %1%S1, %0");
638 #line 396 "rx-decode.opc"
639 ID(and); SPm(ss
, rsrc
, mx
); DR(rdst
); F__SZ_
;
647 switch (op
[2] & 0x00)
656 switch (op
[2] & 0x00)
665 switch (op
[2] & 0x00)
674 switch (op
[2] & 0x00)
679 /** 0000 0110 mx01 01ss rsrc rdst or %1%S1, %0 */
680 #line 414 "rx-decode.opc"
681 int mx AU
= (op
[1] >> 6) & 0x03;
682 #line 414 "rx-decode.opc"
683 int ss AU
= op
[1] & 0x03;
684 #line 414 "rx-decode.opc"
685 int rsrc AU
= (op
[2] >> 4) & 0x0f;
686 #line 414 "rx-decode.opc"
687 int rdst AU
= op
[2] & 0x0f;
690 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
691 "/** 0000 0110 mx01 01ss rsrc rdst or %1%S1, %0 */",
692 op
[0], op
[1], op
[2]);
693 printf (" mx = 0x%x,", mx
);
694 printf (" ss = 0x%x,", ss
);
695 printf (" rsrc = 0x%x,", rsrc
);
696 printf (" rdst = 0x%x\n", rdst
);
698 SYNTAX("or %1%S1, %0");
699 #line 414 "rx-decode.opc"
700 ID(or); SPm(ss
, rsrc
, mx
); DR(rdst
); F__SZ_
;
708 switch (op
[2] & 0x00)
717 switch (op
[2] & 0x00)
726 switch (op
[2] & 0x00)
735 switch (op
[2] & 0xff)
739 switch (op
[3] & 0x00)
744 /** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb %1%S1, %0 */
745 #line 532 "rx-decode.opc"
746 int mx AU
= (op
[1] >> 6) & 0x03;
747 #line 532 "rx-decode.opc"
748 int sp AU
= op
[1] & 0x03;
749 #line 532 "rx-decode.opc"
750 int rsrc AU
= (op
[3] >> 4) & 0x0f;
751 #line 532 "rx-decode.opc"
752 int rdst AU
= op
[3] & 0x0f;
755 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
756 "/** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb %1%S1, %0 */",
757 op
[0], op
[1], op
[2], op
[3]);
758 printf (" mx = 0x%x,", mx
);
759 printf (" sp = 0x%x,", sp
);
760 printf (" rsrc = 0x%x,", rsrc
);
761 printf (" rdst = 0x%x\n", rdst
);
763 SYNTAX("sbb %1%S1, %0");
764 #line 532 "rx-decode.opc"
765 ID(sbb
); SPm(sp
, rsrc
, mx
); DR(rdst
); F_OSZC
;
767 /*----------------------------------------------------------------------*/
776 switch (op
[3] & 0x00)
781 /** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max %1%S1, %0 */
782 #line 561 "rx-decode.opc"
783 int mx AU
= (op
[1] >> 6) & 0x03;
784 #line 561 "rx-decode.opc"
785 int ss AU
= op
[1] & 0x03;
786 #line 561 "rx-decode.opc"
787 int rsrc AU
= (op
[3] >> 4) & 0x0f;
788 #line 561 "rx-decode.opc"
789 int rdst AU
= op
[3] & 0x0f;
792 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
793 "/** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max %1%S1, %0 */",
794 op
[0], op
[1], op
[2], op
[3]);
795 printf (" mx = 0x%x,", mx
);
796 printf (" ss = 0x%x,", ss
);
797 printf (" rsrc = 0x%x,", rsrc
);
798 printf (" rdst = 0x%x\n", rdst
);
800 SYNTAX("max %1%S1, %0");
801 #line 561 "rx-decode.opc"
802 ID(max
); SPm(ss
, rsrc
, mx
); DR(rdst
);
804 /*----------------------------------------------------------------------*/
813 switch (op
[3] & 0x00)
818 /** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min %1%S1, %0 */
819 #line 573 "rx-decode.opc"
820 int mx AU
= (op
[1] >> 6) & 0x03;
821 #line 573 "rx-decode.opc"
822 int ss AU
= op
[1] & 0x03;
823 #line 573 "rx-decode.opc"
824 int rsrc AU
= (op
[3] >> 4) & 0x0f;
825 #line 573 "rx-decode.opc"
826 int rdst AU
= op
[3] & 0x0f;
829 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
830 "/** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min %1%S1, %0 */",
831 op
[0], op
[1], op
[2], op
[3]);
832 printf (" mx = 0x%x,", mx
);
833 printf (" ss = 0x%x,", ss
);
834 printf (" rsrc = 0x%x,", rsrc
);
835 printf (" rdst = 0x%x\n", rdst
);
837 SYNTAX("min %1%S1, %0");
838 #line 573 "rx-decode.opc"
839 ID(min
); SPm(ss
, rsrc
, mx
); DR(rdst
);
841 /*----------------------------------------------------------------------*/
850 switch (op
[3] & 0x00)
855 /** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul %1%S1, %0 */
856 #line 603 "rx-decode.opc"
857 int mx AU
= (op
[1] >> 6) & 0x03;
858 #line 603 "rx-decode.opc"
859 int ss AU
= op
[1] & 0x03;
860 #line 603 "rx-decode.opc"
861 int rsrc AU
= (op
[3] >> 4) & 0x0f;
862 #line 603 "rx-decode.opc"
863 int rdst AU
= op
[3] & 0x0f;
866 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
867 "/** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul %1%S1, %0 */",
868 op
[0], op
[1], op
[2], op
[3]);
869 printf (" mx = 0x%x,", mx
);
870 printf (" ss = 0x%x,", ss
);
871 printf (" rsrc = 0x%x,", rsrc
);
872 printf (" rdst = 0x%x\n", rdst
);
874 SYNTAX("emul %1%S1, %0");
875 #line 603 "rx-decode.opc"
876 ID(emul
); SPm(ss
, rsrc
, mx
); DR(rdst
);
878 /*----------------------------------------------------------------------*/
887 switch (op
[3] & 0x00)
892 /** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu %1%S1, %0 */
893 #line 615 "rx-decode.opc"
894 int mx AU
= (op
[1] >> 6) & 0x03;
895 #line 615 "rx-decode.opc"
896 int ss AU
= op
[1] & 0x03;
897 #line 615 "rx-decode.opc"
898 int rsrc AU
= (op
[3] >> 4) & 0x0f;
899 #line 615 "rx-decode.opc"
900 int rdst AU
= op
[3] & 0x0f;
903 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
904 "/** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu %1%S1, %0 */",
905 op
[0], op
[1], op
[2], op
[3]);
906 printf (" mx = 0x%x,", mx
);
907 printf (" ss = 0x%x,", ss
);
908 printf (" rsrc = 0x%x,", rsrc
);
909 printf (" rdst = 0x%x\n", rdst
);
911 SYNTAX("emulu %1%S1, %0");
912 #line 615 "rx-decode.opc"
913 ID(emulu
); SPm(ss
, rsrc
, mx
); DR(rdst
);
915 /*----------------------------------------------------------------------*/
924 switch (op
[3] & 0x00)
929 /** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div %1%S1, %0 */
930 #line 627 "rx-decode.opc"
931 int mx AU
= (op
[1] >> 6) & 0x03;
932 #line 627 "rx-decode.opc"
933 int ss AU
= op
[1] & 0x03;
934 #line 627 "rx-decode.opc"
935 int rsrc AU
= (op
[3] >> 4) & 0x0f;
936 #line 627 "rx-decode.opc"
937 int rdst AU
= op
[3] & 0x0f;
940 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
941 "/** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div %1%S1, %0 */",
942 op
[0], op
[1], op
[2], op
[3]);
943 printf (" mx = 0x%x,", mx
);
944 printf (" ss = 0x%x,", ss
);
945 printf (" rsrc = 0x%x,", rsrc
);
946 printf (" rdst = 0x%x\n", rdst
);
948 SYNTAX("div %1%S1, %0");
949 #line 627 "rx-decode.opc"
950 ID(div
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_O___
;
952 /*----------------------------------------------------------------------*/
961 switch (op
[3] & 0x00)
966 /** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu %1%S1, %0 */
967 #line 639 "rx-decode.opc"
968 int mx AU
= (op
[1] >> 6) & 0x03;
969 #line 639 "rx-decode.opc"
970 int ss AU
= op
[1] & 0x03;
971 #line 639 "rx-decode.opc"
972 int rsrc AU
= (op
[3] >> 4) & 0x0f;
973 #line 639 "rx-decode.opc"
974 int rdst AU
= op
[3] & 0x0f;
977 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
978 "/** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu %1%S1, %0 */",
979 op
[0], op
[1], op
[2], op
[3]);
980 printf (" mx = 0x%x,", mx
);
981 printf (" ss = 0x%x,", ss
);
982 printf (" rsrc = 0x%x,", rsrc
);
983 printf (" rdst = 0x%x\n", rdst
);
985 SYNTAX("divu %1%S1, %0");
986 #line 639 "rx-decode.opc"
987 ID(divu
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_O___
;
989 /*----------------------------------------------------------------------*/
998 switch (op
[3] & 0x00)
1003 /** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst %1%S1, %2 */
1004 #line 450 "rx-decode.opc"
1005 int mx AU
= (op
[1] >> 6) & 0x03;
1006 #line 450 "rx-decode.opc"
1007 int ss AU
= op
[1] & 0x03;
1008 #line 450 "rx-decode.opc"
1009 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1010 #line 450 "rx-decode.opc"
1011 int rdst AU
= op
[3] & 0x0f;
1014 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1015 "/** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst %1%S1, %2 */",
1016 op
[0], op
[1], op
[2], op
[3]);
1017 printf (" mx = 0x%x,", mx
);
1018 printf (" ss = 0x%x,", ss
);
1019 printf (" rsrc = 0x%x,", rsrc
);
1020 printf (" rdst = 0x%x\n", rdst
);
1022 SYNTAX("tst %1%S1, %2");
1023 #line 450 "rx-decode.opc"
1024 ID(and); SPm(ss
, rsrc
, mx
); S2R(rdst
); F__SZ_
;
1026 /*----------------------------------------------------------------------*/
1035 switch (op
[3] & 0x00)
1040 /** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor %1%S1, %0 */
1041 #line 429 "rx-decode.opc"
1042 int mx AU
= (op
[1] >> 6) & 0x03;
1043 #line 429 "rx-decode.opc"
1044 int ss AU
= op
[1] & 0x03;
1045 #line 429 "rx-decode.opc"
1046 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1047 #line 429 "rx-decode.opc"
1048 int rdst AU
= op
[3] & 0x0f;
1051 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1052 "/** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor %1%S1, %0 */",
1053 op
[0], op
[1], op
[2], op
[3]);
1054 printf (" mx = 0x%x,", mx
);
1055 printf (" ss = 0x%x,", ss
);
1056 printf (" rsrc = 0x%x,", rsrc
);
1057 printf (" rdst = 0x%x\n", rdst
);
1059 SYNTAX("xor %1%S1, %0");
1060 #line 429 "rx-decode.opc"
1061 ID(xor); SPm(ss
, rsrc
, mx
); DR(rdst
); F__SZ_
;
1063 /*----------------------------------------------------------------------*/
1072 switch (op
[3] & 0x00)
1077 /** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg %1%S1, %0 */
1078 #line 363 "rx-decode.opc"
1079 int mx AU
= (op
[1] >> 6) & 0x03;
1080 #line 363 "rx-decode.opc"
1081 int ss AU
= op
[1] & 0x03;
1082 #line 363 "rx-decode.opc"
1083 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1084 #line 363 "rx-decode.opc"
1085 int rdst AU
= op
[3] & 0x0f;
1088 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1089 "/** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg %1%S1, %0 */",
1090 op
[0], op
[1], op
[2], op
[3]);
1091 printf (" mx = 0x%x,", mx
);
1092 printf (" ss = 0x%x,", ss
);
1093 printf (" rsrc = 0x%x,", rsrc
);
1094 printf (" rdst = 0x%x\n", rdst
);
1096 SYNTAX("xchg %1%S1, %0");
1097 #line 363 "rx-decode.opc"
1098 ID(xchg
); DR(rdst
); SPm(ss
, rsrc
, mx
);
1100 /*----------------------------------------------------------------------*/
1109 switch (op
[3] & 0x00)
1114 /** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof %1%S1, %0 */
1115 #line 868 "rx-decode.opc"
1116 int mx AU
= (op
[1] >> 6) & 0x03;
1117 #line 868 "rx-decode.opc"
1118 int sd AU
= op
[1] & 0x03;
1119 #line 868 "rx-decode.opc"
1120 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1121 #line 868 "rx-decode.opc"
1122 int rdst AU
= op
[3] & 0x0f;
1125 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1126 "/** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof %1%S1, %0 */",
1127 op
[0], op
[1], op
[2], op
[3]);
1128 printf (" mx = 0x%x,", mx
);
1129 printf (" sd = 0x%x,", sd
);
1130 printf (" rsrc = 0x%x,", rsrc
);
1131 printf (" rdst = 0x%x\n", rdst
);
1133 SYNTAX("itof %1%S1, %0");
1134 #line 868 "rx-decode.opc"
1135 ID(itof
); DR (rdst
); SPm(sd
, rsrc
, mx
); F__SZ_
;
1137 /*----------------------------------------------------------------------*/
1144 default: UNSUPPORTED(); break;
1149 switch (op
[2] & 0xff)
1153 switch (op
[3] & 0x00)
1156 goto op_semantics_7
;
1162 switch (op
[3] & 0x00)
1165 goto op_semantics_8
;
1171 switch (op
[3] & 0x00)
1174 goto op_semantics_9
;
1180 switch (op
[3] & 0x00)
1183 goto op_semantics_10
;
1189 switch (op
[3] & 0x00)
1192 goto op_semantics_11
;
1198 switch (op
[3] & 0x00)
1201 goto op_semantics_12
;
1207 switch (op
[3] & 0x00)
1210 goto op_semantics_13
;
1216 switch (op
[3] & 0x00)
1219 goto op_semantics_14
;
1225 switch (op
[3] & 0x00)
1228 goto op_semantics_15
;
1234 switch (op
[3] & 0x00)
1237 goto op_semantics_16
;
1243 switch (op
[3] & 0x00)
1246 goto op_semantics_17
;
1250 default: UNSUPPORTED(); break;
1255 switch (op
[2] & 0xff)
1259 switch (op
[3] & 0x00)
1262 goto op_semantics_7
;
1268 switch (op
[3] & 0x00)
1271 goto op_semantics_8
;
1277 switch (op
[3] & 0x00)
1280 goto op_semantics_9
;
1286 switch (op
[3] & 0x00)
1289 goto op_semantics_10
;
1295 switch (op
[3] & 0x00)
1298 goto op_semantics_11
;
1304 switch (op
[3] & 0x00)
1307 goto op_semantics_12
;
1313 switch (op
[3] & 0x00)
1316 goto op_semantics_13
;
1322 switch (op
[3] & 0x00)
1325 goto op_semantics_14
;
1331 switch (op
[3] & 0x00)
1334 goto op_semantics_15
;
1340 switch (op
[3] & 0x00)
1343 goto op_semantics_16
;
1349 switch (op
[3] & 0x00)
1352 goto op_semantics_17
;
1356 default: UNSUPPORTED(); break;
1361 switch (op
[2] & 0xff)
1365 switch (op
[3] & 0x00)
1368 goto op_semantics_7
;
1374 switch (op
[3] & 0x00)
1377 goto op_semantics_8
;
1383 switch (op
[3] & 0x00)
1386 goto op_semantics_9
;
1392 switch (op
[3] & 0x00)
1395 goto op_semantics_10
;
1401 switch (op
[3] & 0x00)
1404 goto op_semantics_11
;
1410 switch (op
[3] & 0x00)
1413 goto op_semantics_12
;
1419 switch (op
[3] & 0x00)
1422 goto op_semantics_13
;
1428 switch (op
[3] & 0x00)
1431 goto op_semantics_14
;
1437 switch (op
[3] & 0x00)
1440 goto op_semantics_15
;
1446 switch (op
[3] & 0x00)
1449 goto op_semantics_16
;
1455 switch (op
[3] & 0x00)
1458 goto op_semantics_17
;
1462 default: UNSUPPORTED(); break;
1467 switch (op
[2] & 0x00)
1470 goto op_semantics_1
;
1476 switch (op
[2] & 0x00)
1479 goto op_semantics_1
;
1485 switch (op
[2] & 0x00)
1488 goto op_semantics_1
;
1494 switch (op
[2] & 0x00)
1497 goto op_semantics_1
;
1503 switch (op
[2] & 0x00)
1506 goto op_semantics_2
;
1512 switch (op
[2] & 0x00)
1515 goto op_semantics_2
;
1521 switch (op
[2] & 0x00)
1524 goto op_semantics_2
;
1530 switch (op
[2] & 0x00)
1533 goto op_semantics_2
;
1539 switch (op
[2] & 0x00)
1542 goto op_semantics_3
;
1548 switch (op
[2] & 0x00)
1551 goto op_semantics_3
;
1557 switch (op
[2] & 0x00)
1560 goto op_semantics_3
;
1566 switch (op
[2] & 0x00)
1569 goto op_semantics_3
;
1575 switch (op
[2] & 0x00)
1578 goto op_semantics_4
;
1584 switch (op
[2] & 0x00)
1587 goto op_semantics_4
;
1593 switch (op
[2] & 0x00)
1596 goto op_semantics_4
;
1602 switch (op
[2] & 0x00)
1605 goto op_semantics_4
;
1611 switch (op
[2] & 0x00)
1614 goto op_semantics_5
;
1620 switch (op
[2] & 0x00)
1623 goto op_semantics_5
;
1629 switch (op
[2] & 0x00)
1632 goto op_semantics_5
;
1638 switch (op
[2] & 0x00)
1641 goto op_semantics_5
;
1647 switch (op
[2] & 0x00)
1650 goto op_semantics_6
;
1656 switch (op
[2] & 0x00)
1659 goto op_semantics_6
;
1665 switch (op
[2] & 0x00)
1668 goto op_semantics_6
;
1674 switch (op
[2] & 0x00)
1677 goto op_semantics_6
;
1683 switch (op
[2] & 0xff)
1687 switch (op
[3] & 0x00)
1690 goto op_semantics_7
;
1696 switch (op
[3] & 0x00)
1699 goto op_semantics_8
;
1705 switch (op
[3] & 0x00)
1708 goto op_semantics_9
;
1714 switch (op
[3] & 0x00)
1717 goto op_semantics_10
;
1723 switch (op
[3] & 0x00)
1726 goto op_semantics_11
;
1732 switch (op
[3] & 0x00)
1735 goto op_semantics_12
;
1741 switch (op
[3] & 0x00)
1744 goto op_semantics_13
;
1750 switch (op
[3] & 0x00)
1753 goto op_semantics_14
;
1759 switch (op
[3] & 0x00)
1762 goto op_semantics_15
;
1768 switch (op
[3] & 0x00)
1771 goto op_semantics_16
;
1777 switch (op
[3] & 0x00)
1780 goto op_semantics_17
;
1784 default: UNSUPPORTED(); break;
1789 switch (op
[2] & 0xff)
1793 switch (op
[3] & 0x00)
1796 goto op_semantics_7
;
1802 switch (op
[3] & 0x00)
1805 goto op_semantics_8
;
1811 switch (op
[3] & 0x00)
1814 goto op_semantics_9
;
1820 switch (op
[3] & 0x00)
1823 goto op_semantics_10
;
1829 switch (op
[3] & 0x00)
1832 goto op_semantics_11
;
1838 switch (op
[3] & 0x00)
1841 goto op_semantics_12
;
1847 switch (op
[3] & 0x00)
1850 goto op_semantics_13
;
1856 switch (op
[3] & 0x00)
1859 goto op_semantics_14
;
1865 switch (op
[3] & 0x00)
1868 goto op_semantics_15
;
1874 switch (op
[3] & 0x00)
1877 goto op_semantics_16
;
1883 switch (op
[3] & 0x00)
1886 goto op_semantics_17
;
1890 default: UNSUPPORTED(); break;
1895 switch (op
[2] & 0xff)
1899 switch (op
[3] & 0x00)
1902 goto op_semantics_7
;
1908 switch (op
[3] & 0x00)
1911 goto op_semantics_8
;
1917 switch (op
[3] & 0x00)
1920 goto op_semantics_9
;
1926 switch (op
[3] & 0x00)
1929 goto op_semantics_10
;
1935 switch (op
[3] & 0x00)
1938 goto op_semantics_11
;
1944 switch (op
[3] & 0x00)
1947 goto op_semantics_12
;
1953 switch (op
[3] & 0x00)
1956 goto op_semantics_13
;
1962 switch (op
[3] & 0x00)
1965 goto op_semantics_14
;
1971 switch (op
[3] & 0x00)
1974 goto op_semantics_15
;
1980 switch (op
[3] & 0x00)
1983 goto op_semantics_16
;
1989 switch (op
[3] & 0x00)
1992 goto op_semantics_17
;
1996 default: UNSUPPORTED(); break;
2001 switch (op
[2] & 0xff)
2005 switch (op
[3] & 0x00)
2008 goto op_semantics_7
;
2014 switch (op
[3] & 0x00)
2017 goto op_semantics_8
;
2023 switch (op
[3] & 0x00)
2026 goto op_semantics_9
;
2032 switch (op
[3] & 0x00)
2035 goto op_semantics_10
;
2041 switch (op
[3] & 0x00)
2044 goto op_semantics_11
;
2050 switch (op
[3] & 0x00)
2053 goto op_semantics_12
;
2059 switch (op
[3] & 0x00)
2062 goto op_semantics_13
;
2068 switch (op
[3] & 0x00)
2071 goto op_semantics_14
;
2077 switch (op
[3] & 0x00)
2080 goto op_semantics_15
;
2086 switch (op
[3] & 0x00)
2089 goto op_semantics_16
;
2095 switch (op
[3] & 0x00)
2098 goto op_semantics_17
;
2102 default: UNSUPPORTED(); break;
2107 switch (op
[2] & 0x00)
2110 goto op_semantics_1
;
2116 switch (op
[2] & 0x00)
2119 goto op_semantics_1
;
2125 switch (op
[2] & 0x00)
2128 goto op_semantics_1
;
2134 switch (op
[2] & 0x00)
2137 goto op_semantics_1
;
2143 switch (op
[2] & 0x00)
2146 goto op_semantics_2
;
2152 switch (op
[2] & 0x00)
2155 goto op_semantics_2
;
2161 switch (op
[2] & 0x00)
2164 goto op_semantics_2
;
2170 switch (op
[2] & 0x00)
2173 goto op_semantics_2
;
2179 switch (op
[2] & 0x00)
2182 goto op_semantics_3
;
2188 switch (op
[2] & 0x00)
2191 goto op_semantics_3
;
2197 switch (op
[2] & 0x00)
2200 goto op_semantics_3
;
2206 switch (op
[2] & 0x00)
2209 goto op_semantics_3
;
2215 switch (op
[2] & 0x00)
2218 goto op_semantics_4
;
2224 switch (op
[2] & 0x00)
2227 goto op_semantics_4
;
2233 switch (op
[2] & 0x00)
2236 goto op_semantics_4
;
2242 switch (op
[2] & 0x00)
2245 goto op_semantics_4
;
2251 switch (op
[2] & 0x00)
2254 goto op_semantics_5
;
2260 switch (op
[2] & 0x00)
2263 goto op_semantics_5
;
2269 switch (op
[2] & 0x00)
2272 goto op_semantics_5
;
2278 switch (op
[2] & 0x00)
2281 goto op_semantics_5
;
2287 switch (op
[2] & 0x00)
2290 goto op_semantics_6
;
2296 switch (op
[2] & 0x00)
2299 goto op_semantics_6
;
2305 switch (op
[2] & 0x00)
2308 goto op_semantics_6
;
2314 switch (op
[2] & 0x00)
2317 goto op_semantics_6
;
2323 switch (op
[2] & 0xff)
2327 switch (op
[3] & 0x00)
2330 goto op_semantics_7
;
2336 switch (op
[3] & 0x00)
2341 /** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc %1%S1, %0 */
2342 #line 471 "rx-decode.opc"
2343 int ss AU
= op
[1] & 0x03;
2344 #line 471 "rx-decode.opc"
2345 int rsrc AU
= (op
[3] >> 4) & 0x0f;
2346 #line 471 "rx-decode.opc"
2347 int rdst AU
= op
[3] & 0x0f;
2350 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
2351 "/** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc %1%S1, %0 */",
2352 op
[0], op
[1], op
[2], op
[3]);
2353 printf (" ss = 0x%x,", ss
);
2354 printf (" rsrc = 0x%x,", rsrc
);
2355 printf (" rdst = 0x%x\n", rdst
);
2357 SYNTAX("adc %1%S1, %0");
2358 #line 471 "rx-decode.opc"
2359 ID(adc
); SPm(ss
, rsrc
, 2); DR(rdst
); F_OSZC
;
2361 /*----------------------------------------------------------------------*/
2370 switch (op
[3] & 0x00)
2373 goto op_semantics_8
;
2379 switch (op
[3] & 0x00)
2382 goto op_semantics_9
;
2388 switch (op
[3] & 0x00)
2391 goto op_semantics_10
;
2397 switch (op
[3] & 0x00)
2400 goto op_semantics_11
;
2406 switch (op
[3] & 0x00)
2409 goto op_semantics_12
;
2415 switch (op
[3] & 0x00)
2418 goto op_semantics_13
;
2424 switch (op
[3] & 0x00)
2427 goto op_semantics_14
;
2433 switch (op
[3] & 0x00)
2436 goto op_semantics_15
;
2442 switch (op
[3] & 0x00)
2445 goto op_semantics_16
;
2451 switch (op
[3] & 0x00)
2454 goto op_semantics_17
;
2458 default: UNSUPPORTED(); break;
2463 switch (op
[2] & 0xff)
2467 switch (op
[3] & 0x00)
2470 goto op_semantics_7
;
2476 switch (op
[3] & 0x00)
2479 goto op_semantics_18
;
2485 switch (op
[3] & 0x00)
2488 goto op_semantics_8
;
2494 switch (op
[3] & 0x00)
2497 goto op_semantics_9
;
2503 switch (op
[3] & 0x00)
2506 goto op_semantics_10
;
2512 switch (op
[3] & 0x00)
2515 goto op_semantics_11
;
2521 switch (op
[3] & 0x00)
2524 goto op_semantics_12
;
2530 switch (op
[3] & 0x00)
2533 goto op_semantics_13
;
2539 switch (op
[3] & 0x00)
2542 goto op_semantics_14
;
2548 switch (op
[3] & 0x00)
2551 goto op_semantics_15
;
2557 switch (op
[3] & 0x00)
2560 goto op_semantics_16
;
2566 switch (op
[3] & 0x00)
2569 goto op_semantics_17
;
2573 default: UNSUPPORTED(); break;
2578 switch (op
[2] & 0xff)
2582 switch (op
[3] & 0x00)
2585 goto op_semantics_7
;
2591 switch (op
[3] & 0x00)
2594 goto op_semantics_18
;
2600 switch (op
[3] & 0x00)
2603 goto op_semantics_8
;
2609 switch (op
[3] & 0x00)
2612 goto op_semantics_9
;
2618 switch (op
[3] & 0x00)
2621 goto op_semantics_10
;
2627 switch (op
[3] & 0x00)
2630 goto op_semantics_11
;
2636 switch (op
[3] & 0x00)
2639 goto op_semantics_12
;
2645 switch (op
[3] & 0x00)
2648 goto op_semantics_13
;
2654 switch (op
[3] & 0x00)
2657 goto op_semantics_14
;
2663 switch (op
[3] & 0x00)
2666 goto op_semantics_15
;
2672 switch (op
[3] & 0x00)
2675 goto op_semantics_16
;
2681 switch (op
[3] & 0x00)
2684 goto op_semantics_17
;
2688 default: UNSUPPORTED(); break;
2693 switch (op
[2] & 0xff)
2697 switch (op
[3] & 0x00)
2700 goto op_semantics_7
;
2706 switch (op
[3] & 0x00)
2709 goto op_semantics_18
;
2715 switch (op
[3] & 0x00)
2718 goto op_semantics_8
;
2724 switch (op
[3] & 0x00)
2727 goto op_semantics_9
;
2733 switch (op
[3] & 0x00)
2736 goto op_semantics_10
;
2742 switch (op
[3] & 0x00)
2745 goto op_semantics_11
;
2751 switch (op
[3] & 0x00)
2754 goto op_semantics_12
;
2760 switch (op
[3] & 0x00)
2763 goto op_semantics_13
;
2769 switch (op
[3] & 0x00)
2772 goto op_semantics_14
;
2778 switch (op
[3] & 0x00)
2781 goto op_semantics_15
;
2787 switch (op
[3] & 0x00)
2790 goto op_semantics_16
;
2796 switch (op
[3] & 0x00)
2799 goto op_semantics_17
;
2803 default: UNSUPPORTED(); break;
2808 switch (op
[2] & 0x00)
2811 goto op_semantics_1
;
2817 switch (op
[2] & 0x00)
2820 goto op_semantics_1
;
2826 switch (op
[2] & 0x00)
2829 goto op_semantics_1
;
2835 switch (op
[2] & 0x00)
2838 goto op_semantics_1
;
2844 switch (op
[2] & 0x00)
2847 goto op_semantics_2
;
2853 switch (op
[2] & 0x00)
2856 goto op_semantics_2
;
2862 switch (op
[2] & 0x00)
2865 goto op_semantics_2
;
2871 switch (op
[2] & 0x00)
2874 goto op_semantics_2
;
2880 switch (op
[2] & 0x00)
2883 goto op_semantics_3
;
2889 switch (op
[2] & 0x00)
2892 goto op_semantics_3
;
2898 switch (op
[2] & 0x00)
2901 goto op_semantics_3
;
2907 switch (op
[2] & 0x00)
2910 goto op_semantics_3
;
2916 switch (op
[2] & 0x00)
2919 goto op_semantics_4
;
2925 switch (op
[2] & 0x00)
2928 goto op_semantics_4
;
2934 switch (op
[2] & 0x00)
2937 goto op_semantics_4
;
2943 switch (op
[2] & 0x00)
2946 goto op_semantics_4
;
2952 switch (op
[2] & 0x00)
2955 goto op_semantics_5
;
2961 switch (op
[2] & 0x00)
2964 goto op_semantics_5
;
2970 switch (op
[2] & 0x00)
2973 goto op_semantics_5
;
2979 switch (op
[2] & 0x00)
2982 goto op_semantics_5
;
2988 switch (op
[2] & 0x00)
2991 goto op_semantics_6
;
2997 switch (op
[2] & 0x00)
3000 goto op_semantics_6
;
3006 switch (op
[2] & 0x00)
3009 goto op_semantics_6
;
3015 switch (op
[2] & 0x00)
3018 goto op_semantics_6
;
3024 switch (op
[2] & 0xff)
3028 switch (op
[3] & 0x00)
3031 goto op_semantics_7
;
3037 switch (op
[3] & 0x00)
3040 goto op_semantics_8
;
3046 switch (op
[3] & 0x00)
3049 goto op_semantics_9
;
3055 switch (op
[3] & 0x00)
3058 goto op_semantics_10
;
3064 switch (op
[3] & 0x00)
3067 goto op_semantics_11
;
3073 switch (op
[3] & 0x00)
3076 goto op_semantics_12
;
3082 switch (op
[3] & 0x00)
3085 goto op_semantics_13
;
3091 switch (op
[3] & 0x00)
3094 goto op_semantics_14
;
3100 switch (op
[3] & 0x00)
3103 goto op_semantics_15
;
3109 switch (op
[3] & 0x00)
3112 goto op_semantics_16
;
3118 switch (op
[3] & 0x00)
3121 goto op_semantics_17
;
3125 default: UNSUPPORTED(); break;
3130 switch (op
[2] & 0xff)
3134 switch (op
[3] & 0x00)
3137 goto op_semantics_7
;
3143 switch (op
[3] & 0x00)
3146 goto op_semantics_8
;
3152 switch (op
[3] & 0x00)
3155 goto op_semantics_9
;
3161 switch (op
[3] & 0x00)
3164 goto op_semantics_10
;
3170 switch (op
[3] & 0x00)
3173 goto op_semantics_11
;
3179 switch (op
[3] & 0x00)
3182 goto op_semantics_12
;
3188 switch (op
[3] & 0x00)
3191 goto op_semantics_13
;
3197 switch (op
[3] & 0x00)
3200 goto op_semantics_14
;
3206 switch (op
[3] & 0x00)
3209 goto op_semantics_15
;
3215 switch (op
[3] & 0x00)
3218 goto op_semantics_16
;
3224 switch (op
[3] & 0x00)
3227 goto op_semantics_17
;
3231 default: UNSUPPORTED(); break;
3236 switch (op
[2] & 0xff)
3240 switch (op
[3] & 0x00)
3243 goto op_semantics_7
;
3249 switch (op
[3] & 0x00)
3252 goto op_semantics_8
;
3258 switch (op
[3] & 0x00)
3261 goto op_semantics_9
;
3267 switch (op
[3] & 0x00)
3270 goto op_semantics_10
;
3276 switch (op
[3] & 0x00)
3279 goto op_semantics_11
;
3285 switch (op
[3] & 0x00)
3288 goto op_semantics_12
;
3294 switch (op
[3] & 0x00)
3297 goto op_semantics_13
;
3303 switch (op
[3] & 0x00)
3306 goto op_semantics_14
;
3312 switch (op
[3] & 0x00)
3315 goto op_semantics_15
;
3321 switch (op
[3] & 0x00)
3324 goto op_semantics_16
;
3330 switch (op
[3] & 0x00)
3333 goto op_semantics_17
;
3337 default: UNSUPPORTED(); break;
3342 switch (op
[2] & 0xff)
3346 switch (op
[3] & 0x00)
3349 goto op_semantics_7
;
3355 switch (op
[3] & 0x00)
3358 goto op_semantics_8
;
3364 switch (op
[3] & 0x00)
3367 goto op_semantics_9
;
3373 switch (op
[3] & 0x00)
3376 goto op_semantics_10
;
3382 switch (op
[3] & 0x00)
3385 goto op_semantics_11
;
3391 switch (op
[3] & 0x00)
3394 goto op_semantics_12
;
3400 switch (op
[3] & 0x00)
3403 goto op_semantics_13
;
3409 switch (op
[3] & 0x00)
3412 goto op_semantics_14
;
3418 switch (op
[3] & 0x00)
3421 goto op_semantics_15
;
3427 switch (op
[3] & 0x00)
3430 goto op_semantics_16
;
3436 switch (op
[3] & 0x00)
3439 goto op_semantics_17
;
3443 default: UNSUPPORTED(); break;
3446 default: UNSUPPORTED(); break;
3458 /** 0000 1dsp bra.s %a0 */
3459 #line 714 "rx-decode.opc"
3460 int dsp AU
= op
[0] & 0x07;
3463 printf ("\033[33m%s\033[0m %02x\n",
3464 "/** 0000 1dsp bra.s %a0 */",
3466 printf (" dsp = 0x%x\n", dsp
);
3468 SYNTAX("bra.s %a0");
3469 #line 714 "rx-decode.opc"
3470 ID(branch
); DC(pc
+ dsp3map
[dsp
]);
3491 /** 0001 n dsp b%1.s %a0 */
3492 #line 704 "rx-decode.opc"
3493 int n AU
= (op
[0] >> 3) & 0x01;
3494 #line 704 "rx-decode.opc"
3495 int dsp AU
= op
[0] & 0x07;
3498 printf ("\033[33m%s\033[0m %02x\n",
3499 "/** 0001 n dsp b%1.s %a0 */",
3501 printf (" n = 0x%x,", n
);
3502 printf (" dsp = 0x%x\n", dsp
);
3504 SYNTAX("b%1.s %a0");
3505 #line 704 "rx-decode.opc"
3506 ID(branch
); Scc(n
); DC(pc
+ dsp3map
[dsp
]);
3526 /** 0010 cond b%1.b %a0 */
3527 #line 707 "rx-decode.opc"
3528 int cond AU
= op
[0] & 0x0f;
3531 printf ("\033[33m%s\033[0m %02x\n",
3532 "/** 0010 cond b%1.b %a0 */",
3534 printf (" cond = 0x%x\n", cond
);
3536 SYNTAX("b%1.b %a0");
3537 #line 707 "rx-decode.opc"
3538 ID(branch
); Scc(cond
); DC(pc
+ IMMex (1));
3544 /** 0010 1110 bra.b %a0 */
3547 printf ("\033[33m%s\033[0m %02x\n",
3548 "/** 0010 1110 bra.b %a0 */",
3551 SYNTAX("bra.b %a0");
3552 #line 717 "rx-decode.opc"
3553 ID(branch
); DC(pc
+ IMMex(1));
3559 /** 0011 1000 bra.w %a0 */
3562 printf ("\033[33m%s\033[0m %02x\n",
3563 "/** 0011 1000 bra.w %a0 */",
3566 SYNTAX("bra.w %a0");
3567 #line 720 "rx-decode.opc"
3568 ID(branch
); DC(pc
+ IMMex(2));
3574 /** 0011 1001 bsr.w %a0 */
3577 printf ("\033[33m%s\033[0m %02x\n",
3578 "/** 0011 1001 bsr.w %a0 */",
3581 SYNTAX("bsr.w %a0");
3582 #line 736 "rx-decode.opc"
3583 ID(jsr
); DC(pc
+ IMMex(2));
3590 /** 0011 101c b%1.w %a0 */
3591 #line 710 "rx-decode.opc"
3592 int c AU
= op
[0] & 0x01;
3595 printf ("\033[33m%s\033[0m %02x\n",
3596 "/** 0011 101c b%1.w %a0 */",
3598 printf (" c = 0x%x\n", c
);
3600 SYNTAX("b%1.w %a0");
3601 #line 710 "rx-decode.opc"
3602 ID(branch
); Scc(c
); DC(pc
+ IMMex (2));
3609 switch (op
[1] & 0x00)
3614 /** 0011 11sz d dst sppp mov%s #%1, %0 */
3615 #line 284 "rx-decode.opc"
3616 int sz AU
= op
[0] & 0x03;
3617 #line 284 "rx-decode.opc"
3618 int d AU
= (op
[1] >> 7) & 0x01;
3619 #line 284 "rx-decode.opc"
3620 int dst AU
= (op
[1] >> 4) & 0x07;
3621 #line 284 "rx-decode.opc"
3622 int sppp AU
= op
[1] & 0x0f;
3625 printf ("\033[33m%s\033[0m %02x %02x\n",
3626 "/** 0011 11sz d dst sppp mov%s #%1, %0 */",
3628 printf (" sz = 0x%x,", sz
);
3629 printf (" d = 0x%x,", d
);
3630 printf (" dst = 0x%x,", dst
);
3631 printf (" sppp = 0x%x\n", sppp
);
3633 SYNTAX("mov%s #%1, %0");
3634 #line 284 "rx-decode.opc"
3635 ID(mov
); sBWL (sz
); DIs(dst
, d
*16+sppp
, sz
); SC(IMM(1)); F_____
;
3643 switch (op
[1] & 0x00)
3646 goto op_semantics_19
;
3652 switch (op
[1] & 0x00)
3655 goto op_semantics_19
;
3661 switch (op
[1] & 0x00)
3665 /** 0011 1111 rega regb rtsd #%1, %2-%0 */
3666 #line 381 "rx-decode.opc"
3667 int rega AU
= (op
[1] >> 4) & 0x0f;
3668 #line 381 "rx-decode.opc"
3669 int regb AU
= op
[1] & 0x0f;
3672 printf ("\033[33m%s\033[0m %02x %02x\n",
3673 "/** 0011 1111 rega regb rtsd #%1, %2-%0 */",
3675 printf (" rega = 0x%x,", rega
);
3676 printf (" regb = 0x%x\n", regb
);
3678 SYNTAX("rtsd #%1, %2-%0");
3679 #line 381 "rx-decode.opc"
3680 ID(rtsd
); SC(IMM(1) * 4); S2R(rega
); DR(regb
);
3682 /*----------------------------------------------------------------------*/
3691 switch (op
[1] & 0x00)
3696 /** 0100 00ss rsrc rdst sub %2%S2, %1 */
3697 #line 516 "rx-decode.opc"
3698 int ss AU
= op
[0] & 0x03;
3699 #line 516 "rx-decode.opc"
3700 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3701 #line 516 "rx-decode.opc"
3702 int rdst AU
= op
[1] & 0x0f;
3705 printf ("\033[33m%s\033[0m %02x %02x\n",
3706 "/** 0100 00ss rsrc rdst sub %2%S2, %1 */",
3708 printf (" ss = 0x%x,", ss
);
3709 printf (" rsrc = 0x%x,", rsrc
);
3710 printf (" rdst = 0x%x\n", rdst
);
3712 SYNTAX("sub %2%S2, %1");
3713 #line 516 "rx-decode.opc"
3714 ID(sub
); S2P(ss
, rsrc
); SR(rdst
); DR(rdst
); F_OSZC
;
3722 switch (op
[1] & 0x00)
3725 goto op_semantics_20
;
3731 switch (op
[1] & 0x00)
3734 goto op_semantics_20
;
3740 switch (op
[1] & 0x00)
3743 goto op_semantics_20
;
3749 switch (op
[1] & 0x00)
3754 /** 0100 01ss rsrc rdst cmp %2%S2, %1 */
3755 #line 504 "rx-decode.opc"
3756 int ss AU
= op
[0] & 0x03;
3757 #line 504 "rx-decode.opc"
3758 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3759 #line 504 "rx-decode.opc"
3760 int rdst AU
= op
[1] & 0x0f;
3763 printf ("\033[33m%s\033[0m %02x %02x\n",
3764 "/** 0100 01ss rsrc rdst cmp %2%S2, %1 */",
3766 printf (" ss = 0x%x,", ss
);
3767 printf (" rsrc = 0x%x,", rsrc
);
3768 printf (" rdst = 0x%x\n", rdst
);
3770 SYNTAX("cmp %2%S2, %1");
3771 #line 504 "rx-decode.opc"
3772 ID(sub
); S2P(ss
, rsrc
); SR(rdst
); F_OSZC
;
3780 switch (op
[1] & 0x00)
3783 goto op_semantics_21
;
3789 switch (op
[1] & 0x00)
3792 goto op_semantics_21
;
3798 switch (op
[1] & 0x00)
3801 goto op_semantics_21
;
3807 switch (op
[1] & 0x00)
3812 /** 0100 10ss rsrc rdst add %1%S1, %0 */
3813 #line 480 "rx-decode.opc"
3814 int ss AU
= op
[0] & 0x03;
3815 #line 480 "rx-decode.opc"
3816 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3817 #line 480 "rx-decode.opc"
3818 int rdst AU
= op
[1] & 0x0f;
3821 printf ("\033[33m%s\033[0m %02x %02x\n",
3822 "/** 0100 10ss rsrc rdst add %1%S1, %0 */",
3824 printf (" ss = 0x%x,", ss
);
3825 printf (" rsrc = 0x%x,", rsrc
);
3826 printf (" rdst = 0x%x\n", rdst
);
3828 SYNTAX("add %1%S1, %0");
3829 #line 480 "rx-decode.opc"
3830 ID(add
); SP(ss
, rsrc
); DR(rdst
); F_OSZC
;
3838 switch (op
[1] & 0x00)
3841 goto op_semantics_22
;
3847 switch (op
[1] & 0x00)
3850 goto op_semantics_22
;
3856 switch (op
[1] & 0x00)
3859 goto op_semantics_22
;
3865 switch (op
[1] & 0x00)
3870 /** 0100 11ss rsrc rdst mul %1%S1, %0 */
3871 #line 585 "rx-decode.opc"
3872 int ss AU
= op
[0] & 0x03;
3873 #line 585 "rx-decode.opc"
3874 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3875 #line 585 "rx-decode.opc"
3876 int rdst AU
= op
[1] & 0x0f;
3879 printf ("\033[33m%s\033[0m %02x %02x\n",
3880 "/** 0100 11ss rsrc rdst mul %1%S1, %0 */",
3882 printf (" ss = 0x%x,", ss
);
3883 printf (" rsrc = 0x%x,", rsrc
);
3884 printf (" rdst = 0x%x\n", rdst
);
3886 SYNTAX("mul %1%S1, %0");
3887 #line 585 "rx-decode.opc"
3888 ID(mul
); SP(ss
, rsrc
); DR(rdst
); F_____
;
3896 switch (op
[1] & 0x00)
3899 goto op_semantics_23
;
3905 switch (op
[1] & 0x00)
3908 goto op_semantics_23
;
3914 switch (op
[1] & 0x00)
3917 goto op_semantics_23
;
3923 switch (op
[1] & 0x00)
3928 /** 0101 00ss rsrc rdst and %1%S1, %0 */
3929 #line 393 "rx-decode.opc"
3930 int ss AU
= op
[0] & 0x03;
3931 #line 393 "rx-decode.opc"
3932 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3933 #line 393 "rx-decode.opc"
3934 int rdst AU
= op
[1] & 0x0f;
3937 printf ("\033[33m%s\033[0m %02x %02x\n",
3938 "/** 0101 00ss rsrc rdst and %1%S1, %0 */",
3940 printf (" ss = 0x%x,", ss
);
3941 printf (" rsrc = 0x%x,", rsrc
);
3942 printf (" rdst = 0x%x\n", rdst
);
3944 SYNTAX("and %1%S1, %0");
3945 #line 393 "rx-decode.opc"
3946 ID(and); SP(ss
, rsrc
); DR(rdst
); F__SZ_
;
3954 switch (op
[1] & 0x00)
3957 goto op_semantics_24
;
3963 switch (op
[1] & 0x00)
3966 goto op_semantics_24
;
3972 switch (op
[1] & 0x00)
3975 goto op_semantics_24
;
3981 switch (op
[1] & 0x00)
3986 /** 0101 01ss rsrc rdst or %1%S1, %0 */
3987 #line 411 "rx-decode.opc"
3988 int ss AU
= op
[0] & 0x03;
3989 #line 411 "rx-decode.opc"
3990 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3991 #line 411 "rx-decode.opc"
3992 int rdst AU
= op
[1] & 0x0f;
3995 printf ("\033[33m%s\033[0m %02x %02x\n",
3996 "/** 0101 01ss rsrc rdst or %1%S1, %0 */",
3998 printf (" ss = 0x%x,", ss
);
3999 printf (" rsrc = 0x%x,", rsrc
);
4000 printf (" rdst = 0x%x\n", rdst
);
4002 SYNTAX("or %1%S1, %0");
4003 #line 411 "rx-decode.opc"
4004 ID(or); SP(ss
, rsrc
); DR(rdst
); F__SZ_
;
4012 switch (op
[1] & 0x00)
4015 goto op_semantics_25
;
4021 switch (op
[1] & 0x00)
4024 goto op_semantics_25
;
4030 switch (op
[1] & 0x00)
4033 goto op_semantics_25
;
4039 switch (op
[1] & 0x00)
4044 /** 0101 1 s ss rsrc rdst movu%s %1, %0 */
4045 #line 332 "rx-decode.opc"
4046 int s AU
= (op
[0] >> 2) & 0x01;
4047 #line 332 "rx-decode.opc"
4048 int ss AU
= op
[0] & 0x03;
4049 #line 332 "rx-decode.opc"
4050 int rsrc AU
= (op
[1] >> 4) & 0x0f;
4051 #line 332 "rx-decode.opc"
4052 int rdst AU
= op
[1] & 0x0f;
4055 printf ("\033[33m%s\033[0m %02x %02x\n",
4056 "/** 0101 1 s ss rsrc rdst movu%s %1, %0 */",
4058 printf (" s = 0x%x,", s
);
4059 printf (" ss = 0x%x,", ss
);
4060 printf (" rsrc = 0x%x,", rsrc
);
4061 printf (" rdst = 0x%x\n", rdst
);
4063 SYNTAX("movu%s %1, %0");
4064 #line 332 "rx-decode.opc"
4065 ID(mov
); uBWL(s
); SD(ss
, rsrc
, s
); DR(rdst
); F_____
;
4073 switch (op
[1] & 0x00)
4076 goto op_semantics_26
;
4082 switch (op
[1] & 0x00)
4085 goto op_semantics_26
;
4091 switch (op
[1] & 0x00)
4094 goto op_semantics_26
;
4100 switch (op
[1] & 0x00)
4103 goto op_semantics_26
;
4109 switch (op
[1] & 0x00)
4112 goto op_semantics_26
;
4118 switch (op
[1] & 0x00)
4121 goto op_semantics_26
;
4127 switch (op
[1] & 0x00)
4130 goto op_semantics_26
;
4136 switch (op
[1] & 0x00)
4140 /** 0110 0000 immm rdst sub #%2, %0 */
4141 #line 513 "rx-decode.opc"
4142 int immm AU
= (op
[1] >> 4) & 0x0f;
4143 #line 513 "rx-decode.opc"
4144 int rdst AU
= op
[1] & 0x0f;
4147 printf ("\033[33m%s\033[0m %02x %02x\n",
4148 "/** 0110 0000 immm rdst sub #%2, %0 */",
4150 printf (" immm = 0x%x,", immm
);
4151 printf (" rdst = 0x%x\n", rdst
);
4153 SYNTAX("sub #%2, %0");
4154 #line 513 "rx-decode.opc"
4155 ID(sub
); S2C(immm
); SR(rdst
); DR(rdst
); F_OSZC
;
4163 switch (op
[1] & 0x00)
4167 /** 0110 0001 immm rdst cmp #%2, %1 */
4168 #line 495 "rx-decode.opc"
4169 int immm AU
= (op
[1] >> 4) & 0x0f;
4170 #line 495 "rx-decode.opc"
4171 int rdst AU
= op
[1] & 0x0f;
4174 printf ("\033[33m%s\033[0m %02x %02x\n",
4175 "/** 0110 0001 immm rdst cmp #%2, %1 */",
4177 printf (" immm = 0x%x,", immm
);
4178 printf (" rdst = 0x%x\n", rdst
);
4180 SYNTAX("cmp #%2, %1");
4181 #line 495 "rx-decode.opc"
4182 ID(sub
); S2C(immm
); SR(rdst
); F_OSZC
;
4190 switch (op
[1] & 0x00)
4194 /** 0110 0010 immm rdst add #%1, %0 */
4195 #line 477 "rx-decode.opc"
4196 int immm AU
= (op
[1] >> 4) & 0x0f;
4197 #line 477 "rx-decode.opc"
4198 int rdst AU
= op
[1] & 0x0f;
4201 printf ("\033[33m%s\033[0m %02x %02x\n",
4202 "/** 0110 0010 immm rdst add #%1, %0 */",
4204 printf (" immm = 0x%x,", immm
);
4205 printf (" rdst = 0x%x\n", rdst
);
4207 SYNTAX("add #%1, %0");
4208 #line 477 "rx-decode.opc"
4209 ID(add
); SC(immm
); DR(rdst
); F_OSZC
;
4217 switch (op
[1] & 0x00)
4221 /** 0110 0011 immm rdst mul #%1, %0 */
4222 #line 579 "rx-decode.opc"
4223 int immm AU
= (op
[1] >> 4) & 0x0f;
4224 #line 579 "rx-decode.opc"
4225 int rdst AU
= op
[1] & 0x0f;
4228 printf ("\033[33m%s\033[0m %02x %02x\n",
4229 "/** 0110 0011 immm rdst mul #%1, %0 */",
4231 printf (" immm = 0x%x,", immm
);
4232 printf (" rdst = 0x%x\n", rdst
);
4234 SYNTAX("mul #%1, %0");
4235 #line 579 "rx-decode.opc"
4236 ID(mul
); DR(rdst
); SC(immm
); F_____
;
4244 switch (op
[1] & 0x00)
4248 /** 0110 0100 immm rdst and #%1, %0 */
4249 #line 387 "rx-decode.opc"
4250 int immm AU
= (op
[1] >> 4) & 0x0f;
4251 #line 387 "rx-decode.opc"
4252 int rdst AU
= op
[1] & 0x0f;
4255 printf ("\033[33m%s\033[0m %02x %02x\n",
4256 "/** 0110 0100 immm rdst and #%1, %0 */",
4258 printf (" immm = 0x%x,", immm
);
4259 printf (" rdst = 0x%x\n", rdst
);
4261 SYNTAX("and #%1, %0");
4262 #line 387 "rx-decode.opc"
4263 ID(and); SC(immm
); DR(rdst
); F__SZ_
;
4271 switch (op
[1] & 0x00)
4275 /** 0110 0101 immm rdst or #%1, %0 */
4276 #line 405 "rx-decode.opc"
4277 int immm AU
= (op
[1] >> 4) & 0x0f;
4278 #line 405 "rx-decode.opc"
4279 int rdst AU
= op
[1] & 0x0f;
4282 printf ("\033[33m%s\033[0m %02x %02x\n",
4283 "/** 0110 0101 immm rdst or #%1, %0 */",
4285 printf (" immm = 0x%x,", immm
);
4286 printf (" rdst = 0x%x\n", rdst
);
4288 SYNTAX("or #%1, %0");
4289 #line 405 "rx-decode.opc"
4290 ID(or); SC(immm
); DR(rdst
); F__SZ_
;
4298 switch (op
[1] & 0x00)
4302 /** 0110 0110 immm rdst mov%s #%1, %0 */
4303 #line 281 "rx-decode.opc"
4304 int immm AU
= (op
[1] >> 4) & 0x0f;
4305 #line 281 "rx-decode.opc"
4306 int rdst AU
= op
[1] & 0x0f;
4309 printf ("\033[33m%s\033[0m %02x %02x\n",
4310 "/** 0110 0110 immm rdst mov%s #%1, %0 */",
4312 printf (" immm = 0x%x,", immm
);
4313 printf (" rdst = 0x%x\n", rdst
);
4315 SYNTAX("mov%s #%1, %0");
4316 #line 281 "rx-decode.opc"
4317 ID(mov
); DR(rdst
); SC(immm
); F_____
;
4325 /** 0110 0111 rtsd #%1 */
4328 printf ("\033[33m%s\033[0m %02x\n",
4329 "/** 0110 0111 rtsd #%1 */",
4333 #line 378 "rx-decode.opc"
4334 ID(rtsd
); SC(IMM(1) * 4);
4340 switch (op
[1] & 0x00)
4345 /** 0110 100i mmmm rdst shlr #%2, %0 */
4346 #line 665 "rx-decode.opc"
4347 int i AU
= op
[0] & 0x01;
4348 #line 665 "rx-decode.opc"
4349 int mmmm AU
= (op
[1] >> 4) & 0x0f;
4350 #line 665 "rx-decode.opc"
4351 int rdst AU
= op
[1] & 0x0f;
4354 printf ("\033[33m%s\033[0m %02x %02x\n",
4355 "/** 0110 100i mmmm rdst shlr #%2, %0 */",
4357 printf (" i = 0x%x,", i
);
4358 printf (" mmmm = 0x%x,", mmmm
);
4359 printf (" rdst = 0x%x\n", rdst
);
4361 SYNTAX("shlr #%2, %0");
4362 #line 665 "rx-decode.opc"
4363 ID(shlr
); S2C(i
*16+mmmm
); SR(rdst
); DR(rdst
); F__SZC
;
4371 switch (op
[1] & 0x00)
4374 goto op_semantics_27
;
4380 switch (op
[1] & 0x00)
4385 /** 0110 101i mmmm rdst shar #%2, %0 */
4386 #line 655 "rx-decode.opc"
4387 int i AU
= op
[0] & 0x01;
4388 #line 655 "rx-decode.opc"
4389 int mmmm AU
= (op
[1] >> 4) & 0x0f;
4390 #line 655 "rx-decode.opc"
4391 int rdst AU
= op
[1] & 0x0f;
4394 printf ("\033[33m%s\033[0m %02x %02x\n",
4395 "/** 0110 101i mmmm rdst shar #%2, %0 */",
4397 printf (" i = 0x%x,", i
);
4398 printf (" mmmm = 0x%x,", mmmm
);
4399 printf (" rdst = 0x%x\n", rdst
);
4401 SYNTAX("shar #%2, %0");
4402 #line 655 "rx-decode.opc"
4403 ID(shar
); S2C(i
*16+mmmm
); SR(rdst
); DR(rdst
); F_0SZC
;
4411 switch (op
[1] & 0x00)
4414 goto op_semantics_28
;
4420 switch (op
[1] & 0x00)
4425 /** 0110 110i mmmm rdst shll #%2, %0 */
4426 #line 645 "rx-decode.opc"
4427 int i AU
= op
[0] & 0x01;
4428 #line 645 "rx-decode.opc"
4429 int mmmm AU
= (op
[1] >> 4) & 0x0f;
4430 #line 645 "rx-decode.opc"
4431 int rdst AU
= op
[1] & 0x0f;
4434 printf ("\033[33m%s\033[0m %02x %02x\n",
4435 "/** 0110 110i mmmm rdst shll #%2, %0 */",
4437 printf (" i = 0x%x,", i
);
4438 printf (" mmmm = 0x%x,", mmmm
);
4439 printf (" rdst = 0x%x\n", rdst
);
4441 SYNTAX("shll #%2, %0");
4442 #line 645 "rx-decode.opc"
4443 ID(shll
); S2C(i
*16+mmmm
); SR(rdst
); DR(rdst
); F_OSZC
;
4451 switch (op
[1] & 0x00)
4454 goto op_semantics_29
;
4460 switch (op
[1] & 0x00)
4464 /** 0110 1110 dsta dstb pushm %1-%2 */
4465 #line 345 "rx-decode.opc"
4466 int dsta AU
= (op
[1] >> 4) & 0x0f;
4467 #line 345 "rx-decode.opc"
4468 int dstb AU
= op
[1] & 0x0f;
4471 printf ("\033[33m%s\033[0m %02x %02x\n",
4472 "/** 0110 1110 dsta dstb pushm %1-%2 */",
4474 printf (" dsta = 0x%x,", dsta
);
4475 printf (" dstb = 0x%x\n", dstb
);
4477 SYNTAX("pushm %1-%2");
4478 #line 345 "rx-decode.opc"
4479 ID(pushm
); SR(dsta
); S2R(dstb
); F_____
;
4487 switch (op
[1] & 0x00)
4491 /** 0110 1111 dsta dstb popm %1-%2 */
4492 #line 342 "rx-decode.opc"
4493 int dsta AU
= (op
[1] >> 4) & 0x0f;
4494 #line 342 "rx-decode.opc"
4495 int dstb AU
= op
[1] & 0x0f;
4498 printf ("\033[33m%s\033[0m %02x %02x\n",
4499 "/** 0110 1111 dsta dstb popm %1-%2 */",
4501 printf (" dsta = 0x%x,", dsta
);
4502 printf (" dstb = 0x%x\n", dstb
);
4504 SYNTAX("popm %1-%2");
4505 #line 342 "rx-decode.opc"
4506 ID(popm
); SR(dsta
); S2R(dstb
); F_____
;
4514 switch (op
[1] & 0x00)
4519 /** 0111 00im rsrc rdst add #%1, %2, %0 */
4520 #line 486 "rx-decode.opc"
4521 int im AU
= op
[0] & 0x03;
4522 #line 486 "rx-decode.opc"
4523 int rsrc AU
= (op
[1] >> 4) & 0x0f;
4524 #line 486 "rx-decode.opc"
4525 int rdst AU
= op
[1] & 0x0f;
4528 printf ("\033[33m%s\033[0m %02x %02x\n",
4529 "/** 0111 00im rsrc rdst add #%1, %2, %0 */",
4531 printf (" im = 0x%x,", im
);
4532 printf (" rsrc = 0x%x,", rsrc
);
4533 printf (" rdst = 0x%x\n", rdst
);
4535 SYNTAX("add #%1, %2, %0");
4536 #line 486 "rx-decode.opc"
4537 ID(add
); SC(IMMex(im
)); S2R(rsrc
); DR(rdst
); F_OSZC
;
4545 switch (op
[1] & 0x00)
4548 goto op_semantics_30
;
4554 switch (op
[1] & 0x00)
4557 goto op_semantics_30
;
4563 switch (op
[1] & 0x00)
4566 goto op_semantics_30
;
4572 switch (op
[1] & 0xf0)
4577 /** 0111 01im 0000 rsrc cmp #%2, %1%S1 */
4578 #line 498 "rx-decode.opc"
4579 int im AU
= op
[0] & 0x03;
4580 #line 498 "rx-decode.opc"
4581 int rsrc AU
= op
[1] & 0x0f;
4584 printf ("\033[33m%s\033[0m %02x %02x\n",
4585 "/** 0111 01im 0000 rsrc cmp #%2, %1%S1 */",
4587 printf (" im = 0x%x,", im
);
4588 printf (" rsrc = 0x%x\n", rsrc
);
4590 SYNTAX("cmp #%2, %1%S1");
4591 #line 498 "rx-decode.opc"
4592 ID(sub
); SR(rsrc
); S2C(IMMex(im
)); F_OSZC
;
4599 /** 0111 01im 0001rdst mul #%1, %0 */
4600 #line 582 "rx-decode.opc"
4601 int im AU
= op
[0] & 0x03;
4602 #line 582 "rx-decode.opc"
4603 int rdst AU
= op
[1] & 0x0f;
4606 printf ("\033[33m%s\033[0m %02x %02x\n",
4607 "/** 0111 01im 0001rdst mul #%1, %0 */",
4609 printf (" im = 0x%x,", im
);
4610 printf (" rdst = 0x%x\n", rdst
);
4612 SYNTAX("mul #%1, %0");
4613 #line 582 "rx-decode.opc"
4614 ID(mul
); DR(rdst
); SC(IMMex(im
)); F_____
;
4621 /** 0111 01im 0010 rdst and #%1, %0 */
4622 #line 390 "rx-decode.opc"
4623 int im AU
= op
[0] & 0x03;
4624 #line 390 "rx-decode.opc"
4625 int rdst AU
= op
[1] & 0x0f;
4628 printf ("\033[33m%s\033[0m %02x %02x\n",
4629 "/** 0111 01im 0010 rdst and #%1, %0 */",
4631 printf (" im = 0x%x,", im
);
4632 printf (" rdst = 0x%x\n", rdst
);
4634 SYNTAX("and #%1, %0");
4635 #line 390 "rx-decode.opc"
4636 ID(and); SC(IMMex(im
)); DR(rdst
); F__SZ_
;
4643 /** 0111 01im 0011 rdst or #%1, %0 */
4644 #line 408 "rx-decode.opc"
4645 int im AU
= op
[0] & 0x03;
4646 #line 408 "rx-decode.opc"
4647 int rdst AU
= op
[1] & 0x0f;
4650 printf ("\033[33m%s\033[0m %02x %02x\n",
4651 "/** 0111 01im 0011 rdst or #%1, %0 */",
4653 printf (" im = 0x%x,", im
);
4654 printf (" rdst = 0x%x\n", rdst
);
4656 SYNTAX("or #%1, %0");
4657 #line 408 "rx-decode.opc"
4658 ID(or); SC(IMMex(im
)); DR(rdst
); F__SZ_
;
4662 default: UNSUPPORTED(); break;
4667 switch (op
[1] & 0xff)
4685 goto op_semantics_31
;
4703 goto op_semantics_32
;
4721 goto op_semantics_33
;
4739 goto op_semantics_34
;
4758 /** 0111 0101 0100 rdst mov%s #%1, %0 */
4759 #line 262 "rx-decode.opc"
4760 int rdst AU
= op
[1] & 0x0f;
4763 printf ("\033[33m%s\033[0m %02x %02x\n",
4764 "/** 0111 0101 0100 rdst mov%s #%1, %0 */",
4766 printf (" rdst = 0x%x\n", rdst
);
4768 SYNTAX("mov%s #%1, %0");
4769 #line 262 "rx-decode.opc"
4770 ID(mov
); DR(rdst
); SC(IMM (1)); F_____
;
4791 /** 0111 0101 0101 rsrc cmp #%2, %1 */
4792 #line 501 "rx-decode.opc"
4793 int rsrc AU
= op
[1] & 0x0f;
4796 printf ("\033[33m%s\033[0m %02x %02x\n",
4797 "/** 0111 0101 0101 rsrc cmp #%2, %1 */",
4799 printf (" rsrc = 0x%x\n", rsrc
);
4801 SYNTAX("cmp #%2, %1");
4802 #line 501 "rx-decode.opc"
4803 ID(sub
); SR(rsrc
); S2C(IMM(1)); F_OSZC
;
4809 /** 0111 0101 0110 0000 int #%1 */
4812 printf ("\033[33m%s\033[0m %02x %02x\n",
4813 "/** 0111 0101 0110 0000 int #%1 */",
4817 #line 962 "rx-decode.opc"
4818 ID(int); SC(IMM(1));
4824 switch (op
[2] & 0xf0)
4828 /** 0111 0101 0111 0000 0000 immm mvtipl #%1 */
4829 #line 929 "rx-decode.opc"
4830 int immm AU
= op
[2] & 0x0f;
4833 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
4834 "/** 0111 0101 0111 0000 0000 immm mvtipl #%1 */",
4835 op
[0], op
[1], op
[2]);
4836 printf (" immm = 0x%x\n", immm
);
4838 SYNTAX("mvtipl #%1");
4839 #line 929 "rx-decode.opc"
4840 ID(mvtipl
); SC(immm
);
4844 default: UNSUPPORTED(); break;
4847 default: UNSUPPORTED(); break;
4852 switch (op
[1] & 0xf0)
4855 goto op_semantics_31
;
4858 goto op_semantics_32
;
4861 goto op_semantics_33
;
4864 goto op_semantics_34
;
4866 default: UNSUPPORTED(); break;
4871 switch (op
[1] & 0xf0)
4874 goto op_semantics_31
;
4877 goto op_semantics_32
;
4880 goto op_semantics_33
;
4883 goto op_semantics_34
;
4885 default: UNSUPPORTED(); break;
4890 switch (op
[1] & 0x00)
4895 /** 0111 100b ittt rdst bset #%1, %0 */
4896 #line 880 "rx-decode.opc"
4897 int b AU
= op
[0] & 0x01;
4898 #line 880 "rx-decode.opc"
4899 int ittt AU
= (op
[1] >> 4) & 0x0f;
4900 #line 880 "rx-decode.opc"
4901 int rdst AU
= op
[1] & 0x0f;
4904 printf ("\033[33m%s\033[0m %02x %02x\n",
4905 "/** 0111 100b ittt rdst bset #%1, %0 */",
4907 printf (" b = 0x%x,", b
);
4908 printf (" ittt = 0x%x,", ittt
);
4909 printf (" rdst = 0x%x\n", rdst
);
4911 SYNTAX("bset #%1, %0");
4912 #line 880 "rx-decode.opc"
4913 ID(bset
); BWL(LSIZE
); SC(b
*16+ittt
); DR(rdst
); F_____
;
4922 switch (op
[1] & 0x00)
4925 goto op_semantics_35
;
4931 switch (op
[1] & 0x00)
4936 /** 0111 101b ittt rdst bclr #%1, %0 */
4937 #line 890 "rx-decode.opc"
4938 int b AU
= op
[0] & 0x01;
4939 #line 890 "rx-decode.opc"
4940 int ittt AU
= (op
[1] >> 4) & 0x0f;
4941 #line 890 "rx-decode.opc"
4942 int rdst AU
= op
[1] & 0x0f;
4945 printf ("\033[33m%s\033[0m %02x %02x\n",
4946 "/** 0111 101b ittt rdst bclr #%1, %0 */",
4948 printf (" b = 0x%x,", b
);
4949 printf (" ittt = 0x%x,", ittt
);
4950 printf (" rdst = 0x%x\n", rdst
);
4952 SYNTAX("bclr #%1, %0");
4953 #line 890 "rx-decode.opc"
4954 ID(bclr
); BWL(LSIZE
); SC(b
*16+ittt
); DR(rdst
); F_____
;
4963 switch (op
[1] & 0x00)
4966 goto op_semantics_36
;
4972 switch (op
[1] & 0x00)
4977 /** 0111 110b ittt rdst btst #%2, %1 */
4978 #line 900 "rx-decode.opc"
4979 int b AU
= op
[0] & 0x01;
4980 #line 900 "rx-decode.opc"
4981 int ittt AU
= (op
[1] >> 4) & 0x0f;
4982 #line 900 "rx-decode.opc"
4983 int rdst AU
= op
[1] & 0x0f;
4986 printf ("\033[33m%s\033[0m %02x %02x\n",
4987 "/** 0111 110b ittt rdst btst #%2, %1 */",
4989 printf (" b = 0x%x,", b
);
4990 printf (" ittt = 0x%x,", ittt
);
4991 printf (" rdst = 0x%x\n", rdst
);
4993 SYNTAX("btst #%2, %1");
4994 #line 900 "rx-decode.opc"
4995 ID(btst
); BWL(LSIZE
); S2C(b
*16+ittt
); SR(rdst
); F___ZC
;
5004 switch (op
[1] & 0x00)
5007 goto op_semantics_37
;
5013 switch (op
[1] & 0xf0)
5017 /** 0111 1110 0000 rdst not %0 */
5018 #line 435 "rx-decode.opc"
5019 int rdst AU
= op
[1] & 0x0f;
5022 printf ("\033[33m%s\033[0m %02x %02x\n",
5023 "/** 0111 1110 0000 rdst not %0 */",
5025 printf (" rdst = 0x%x\n", rdst
);
5028 #line 435 "rx-decode.opc"
5029 ID(xor); DR(rdst
); SR(rdst
); S2C(~0); F__SZ_
;
5035 /** 0111 1110 0001 rdst neg %0 */
5036 #line 456 "rx-decode.opc"
5037 int rdst AU
= op
[1] & 0x0f;
5040 printf ("\033[33m%s\033[0m %02x %02x\n",
5041 "/** 0111 1110 0001 rdst neg %0 */",
5043 printf (" rdst = 0x%x\n", rdst
);
5046 #line 456 "rx-decode.opc"
5047 ID(sub
); DR(rdst
); SC(0); S2R(rdst
); F_OSZC
;
5053 /** 0111 1110 0010 rdst abs %0 */
5054 #line 538 "rx-decode.opc"
5055 int rdst AU
= op
[1] & 0x0f;
5058 printf ("\033[33m%s\033[0m %02x %02x\n",
5059 "/** 0111 1110 0010 rdst abs %0 */",
5061 printf (" rdst = 0x%x\n", rdst
);
5064 #line 538 "rx-decode.opc"
5065 ID(abs
); DR(rdst
); SR(rdst
); F_OSZ_
;
5071 /** 0111 1110 0011 rdst sat %0 */
5072 #line 820 "rx-decode.opc"
5073 int rdst AU
= op
[1] & 0x0f;
5076 printf ("\033[33m%s\033[0m %02x %02x\n",
5077 "/** 0111 1110 0011 rdst sat %0 */",
5079 printf (" rdst = 0x%x\n", rdst
);
5082 #line 820 "rx-decode.opc"
5089 /** 0111 1110 0100 rdst rorc %0 */
5090 #line 680 "rx-decode.opc"
5091 int rdst AU
= op
[1] & 0x0f;
5094 printf ("\033[33m%s\033[0m %02x %02x\n",
5095 "/** 0111 1110 0100 rdst rorc %0 */",
5097 printf (" rdst = 0x%x\n", rdst
);
5100 #line 680 "rx-decode.opc"
5101 ID(rorc
); DR(rdst
); F__SZC
;
5107 /** 0111 1110 0101 rdst rolc %0 */
5108 #line 677 "rx-decode.opc"
5109 int rdst AU
= op
[1] & 0x0f;
5112 printf ("\033[33m%s\033[0m %02x %02x\n",
5113 "/** 0111 1110 0101 rdst rolc %0 */",
5115 printf (" rdst = 0x%x\n", rdst
);
5118 #line 677 "rx-decode.opc"
5119 ID(rolc
); DR(rdst
); F__SZC
;
5127 /** 0111 1110 10sz rsrc push%s %1 */
5128 #line 351 "rx-decode.opc"
5129 int sz AU
= (op
[1] >> 4) & 0x03;
5130 #line 351 "rx-decode.opc"
5131 int rsrc AU
= op
[1] & 0x0f;
5134 printf ("\033[33m%s\033[0m %02x %02x\n",
5135 "/** 0111 1110 10sz rsrc push%s %1 */",
5137 printf (" sz = 0x%x,", sz
);
5138 printf (" rsrc = 0x%x\n", rsrc
);
5140 SYNTAX("push%s %1");
5141 #line 351 "rx-decode.opc"
5142 ID(mov
); BWL(sz
); OP(0, RX_Operand_Predec
, 0, 0); SR(rsrc
); F_____
;
5148 /** 0111 1110 1011 rdst pop %0 */
5149 #line 348 "rx-decode.opc"
5150 int rdst AU
= op
[1] & 0x0f;
5153 printf ("\033[33m%s\033[0m %02x %02x\n",
5154 "/** 0111 1110 1011 rdst pop %0 */",
5156 printf (" rdst = 0x%x\n", rdst
);
5159 #line 348 "rx-decode.opc"
5160 ID(mov
); OP(1, RX_Operand_Postinc
, 0, 0); DR(rdst
); F_____
;
5167 /** 0111 1110 110 crsrc pushc %1 */
5168 #line 935 "rx-decode.opc"
5169 int crsrc AU
= op
[1] & 0x1f;
5172 printf ("\033[33m%s\033[0m %02x %02x\n",
5173 "/** 0111 1110 110 crsrc pushc %1 */",
5175 printf (" crsrc = 0x%x\n", crsrc
);
5178 #line 935 "rx-decode.opc"
5179 ID(mov
); OP(0, RX_Operand_Predec
, 0, 0); SR(crsrc
+ 16);
5186 /** 0111 1110 111 crdst popc %0 */
5187 #line 932 "rx-decode.opc"
5188 int crdst AU
= op
[1] & 0x1f;
5191 printf ("\033[33m%s\033[0m %02x %02x\n",
5192 "/** 0111 1110 111 crdst popc %0 */",
5194 printf (" crdst = 0x%x\n", crdst
);
5197 #line 932 "rx-decode.opc"
5198 ID(mov
); OP(1, RX_Operand_Postinc
, 0, 0); DR(crdst
+ 16);
5202 default: UNSUPPORTED(); break;
5207 switch (op
[1] & 0xff)
5226 /** 0111 1111 0000 rsrc jmp %0 */
5227 #line 730 "rx-decode.opc"
5228 int rsrc AU
= op
[1] & 0x0f;
5231 printf ("\033[33m%s\033[0m %02x %02x\n",
5232 "/** 0111 1111 0000 rsrc jmp %0 */",
5234 printf (" rsrc = 0x%x\n", rsrc
);
5237 #line 730 "rx-decode.opc"
5238 ID(branch
); DR(rsrc
);
5259 /** 0111 1111 0001 rsrc jsr %0 */
5260 #line 733 "rx-decode.opc"
5261 int rsrc AU
= op
[1] & 0x0f;
5264 printf ("\033[33m%s\033[0m %02x %02x\n",
5265 "/** 0111 1111 0001 rsrc jsr %0 */",
5267 printf (" rsrc = 0x%x\n", rsrc
);
5270 #line 733 "rx-decode.opc"
5292 /** 0111 1111 0100 rsrc bra.l %0 */
5293 #line 726 "rx-decode.opc"
5294 int rsrc AU
= op
[1] & 0x0f;
5297 printf ("\033[33m%s\033[0m %02x %02x\n",
5298 "/** 0111 1111 0100 rsrc bra.l %0 */",
5300 printf (" rsrc = 0x%x\n", rsrc
);
5303 #line 726 "rx-decode.opc"
5304 ID(branchrel
); DR(rsrc
);
5326 /** 0111 1111 0101 rsrc bsr.l %0 */
5327 #line 742 "rx-decode.opc"
5328 int rsrc AU
= op
[1] & 0x0f;
5331 printf ("\033[33m%s\033[0m %02x %02x\n",
5332 "/** 0111 1111 0101 rsrc bsr.l %0 */",
5334 printf (" rsrc = 0x%x\n", rsrc
);
5337 #line 742 "rx-decode.opc"
5338 ID(jsrrel
); DR(rsrc
);
5346 /** 0111 1111 1000 00sz suntil%s */
5347 #line 766 "rx-decode.opc"
5348 int sz AU
= op
[1] & 0x03;
5351 printf ("\033[33m%s\033[0m %02x %02x\n",
5352 "/** 0111 1111 1000 00sz suntil%s */",
5354 printf (" sz = 0x%x\n", sz
);
5357 #line 766 "rx-decode.opc"
5358 ID(suntil
); BWL(sz
); F___ZC
;
5364 /** 0111 1111 1000 0011 scmpu */
5367 printf ("\033[33m%s\033[0m %02x %02x\n",
5368 "/** 0111 1111 1000 0011 scmpu */",
5372 #line 757 "rx-decode.opc"
5381 /** 0111 1111 1000 01sz swhile%s */
5382 #line 769 "rx-decode.opc"
5383 int sz AU
= op
[1] & 0x03;
5386 printf ("\033[33m%s\033[0m %02x %02x\n",
5387 "/** 0111 1111 1000 01sz swhile%s */",
5389 printf (" sz = 0x%x\n", sz
);
5392 #line 769 "rx-decode.opc"
5393 ID(swhile
); BWL(sz
); F___ZC
;
5399 /** 0111 1111 1000 0111 smovu */
5402 printf ("\033[33m%s\033[0m %02x %02x\n",
5403 "/** 0111 1111 1000 0111 smovu */",
5407 #line 760 "rx-decode.opc"
5416 /** 0111 1111 1000 10sz sstr%s */
5417 #line 775 "rx-decode.opc"
5418 int sz AU
= op
[1] & 0x03;
5421 printf ("\033[33m%s\033[0m %02x %02x\n",
5422 "/** 0111 1111 1000 10sz sstr%s */",
5424 printf (" sz = 0x%x\n", sz
);
5427 #line 775 "rx-decode.opc"
5430 /*----------------------------------------------------------------------*/
5437 /** 0111 1111 1000 1011 smovb */
5440 printf ("\033[33m%s\033[0m %02x %02x\n",
5441 "/** 0111 1111 1000 1011 smovb */",
5445 #line 763 "rx-decode.opc"
5454 /** 0111 1111 1000 11sz rmpa%s */
5455 #line 781 "rx-decode.opc"
5456 int sz AU
= op
[1] & 0x03;
5459 printf ("\033[33m%s\033[0m %02x %02x\n",
5460 "/** 0111 1111 1000 11sz rmpa%s */",
5462 printf (" sz = 0x%x\n", sz
);
5465 #line 781 "rx-decode.opc"
5466 ID(rmpa
); BWL(sz
); F_OS__
;
5468 /*----------------------------------------------------------------------*/
5475 /** 0111 1111 1000 1111 smovf */
5478 printf ("\033[33m%s\033[0m %02x %02x\n",
5479 "/** 0111 1111 1000 1111 smovf */",
5483 #line 772 "rx-decode.opc"
5490 /** 0111 1111 1001 0011 satr */
5493 printf ("\033[33m%s\033[0m %02x %02x\n",
5494 "/** 0111 1111 1001 0011 satr */",
5498 #line 823 "rx-decode.opc"
5501 /*----------------------------------------------------------------------*/
5508 /** 0111 1111 1001 0100 rtfi */
5511 printf ("\033[33m%s\033[0m %02x %02x\n",
5512 "/** 0111 1111 1001 0100 rtfi */",
5516 #line 950 "rx-decode.opc"
5523 /** 0111 1111 1001 0101 rte */
5526 printf ("\033[33m%s\033[0m %02x %02x\n",
5527 "/** 0111 1111 1001 0101 rte */",
5531 #line 953 "rx-decode.opc"
5538 /** 0111 1111 1001 0110 wait */
5541 printf ("\033[33m%s\033[0m %02x %02x\n",
5542 "/** 0111 1111 1001 0110 wait */",
5546 #line 965 "rx-decode.opc"
5549 /*----------------------------------------------------------------------*/
5571 /** 0111 1111 1010 rdst setpsw %0 */
5572 #line 926 "rx-decode.opc"
5573 int rdst AU
= op
[1] & 0x0f;
5576 printf ("\033[33m%s\033[0m %02x %02x\n",
5577 "/** 0111 1111 1010 rdst setpsw %0 */",
5579 printf (" rdst = 0x%x\n", rdst
);
5581 SYNTAX("setpsw %0");
5582 #line 926 "rx-decode.opc"
5583 ID(setpsw
); DF(rdst
);
5604 /** 0111 1111 1011 rdst clrpsw %0 */
5605 #line 923 "rx-decode.opc"
5606 int rdst AU
= op
[1] & 0x0f;
5609 printf ("\033[33m%s\033[0m %02x %02x\n",
5610 "/** 0111 1111 1011 rdst clrpsw %0 */",
5612 printf (" rdst = 0x%x\n", rdst
);
5614 SYNTAX("clrpsw %0");
5615 #line 923 "rx-decode.opc"
5616 ID(clrpsw
); DF(rdst
);
5620 default: UNSUPPORTED(); break;
5625 switch (op
[1] & 0x00)
5630 /** 10sz 0dsp a dst b src mov%s %1, %0 */
5631 #line 309 "rx-decode.opc"
5632 int sz AU
= (op
[0] >> 4) & 0x03;
5633 #line 309 "rx-decode.opc"
5634 int dsp AU
= op
[0] & 0x07;
5635 #line 309 "rx-decode.opc"
5636 int a AU
= (op
[1] >> 7) & 0x01;
5637 #line 309 "rx-decode.opc"
5638 int dst AU
= (op
[1] >> 4) & 0x07;
5639 #line 309 "rx-decode.opc"
5640 int b AU
= (op
[1] >> 3) & 0x01;
5641 #line 309 "rx-decode.opc"
5642 int src AU
= op
[1] & 0x07;
5645 printf ("\033[33m%s\033[0m %02x %02x\n",
5646 "/** 10sz 0dsp a dst b src mov%s %1, %0 */",
5648 printf (" sz = 0x%x,", sz
);
5649 printf (" dsp = 0x%x,", dsp
);
5650 printf (" a = 0x%x,", a
);
5651 printf (" dst = 0x%x,", dst
);
5652 printf (" b = 0x%x,", b
);
5653 printf (" src = 0x%x\n", src
);
5655 SYNTAX("mov%s %1, %0");
5656 #line 309 "rx-decode.opc"
5657 ID(mov
); sBWL(sz
); DIs(dst
, dsp
*4+a
*2+b
, sz
); SR(src
); F_____
;
5665 switch (op
[1] & 0x00)
5668 goto op_semantics_38
;
5674 switch (op
[1] & 0x00)
5677 goto op_semantics_38
;
5683 switch (op
[1] & 0x00)
5686 goto op_semantics_38
;
5692 switch (op
[1] & 0x00)
5695 goto op_semantics_38
;
5701 switch (op
[1] & 0x00)
5704 goto op_semantics_38
;
5710 switch (op
[1] & 0x00)
5713 goto op_semantics_38
;
5719 switch (op
[1] & 0x00)
5722 goto op_semantics_38
;
5728 switch (op
[1] & 0x00)
5733 /** 10sz 1dsp a src b dst mov%s %1, %0 */
5734 #line 306 "rx-decode.opc"
5735 int sz AU
= (op
[0] >> 4) & 0x03;
5736 #line 306 "rx-decode.opc"
5737 int dsp AU
= op
[0] & 0x07;
5738 #line 306 "rx-decode.opc"
5739 int a AU
= (op
[1] >> 7) & 0x01;
5740 #line 306 "rx-decode.opc"
5741 int src AU
= (op
[1] >> 4) & 0x07;
5742 #line 306 "rx-decode.opc"
5743 int b AU
= (op
[1] >> 3) & 0x01;
5744 #line 306 "rx-decode.opc"
5745 int dst AU
= op
[1] & 0x07;
5748 printf ("\033[33m%s\033[0m %02x %02x\n",
5749 "/** 10sz 1dsp a src b dst mov%s %1, %0 */",
5751 printf (" sz = 0x%x,", sz
);
5752 printf (" dsp = 0x%x,", dsp
);
5753 printf (" a = 0x%x,", a
);
5754 printf (" src = 0x%x,", src
);
5755 printf (" b = 0x%x,", b
);
5756 printf (" dst = 0x%x\n", dst
);
5758 SYNTAX("mov%s %1, %0");
5759 #line 306 "rx-decode.opc"
5760 ID(mov
); sBWL(sz
); DR(dst
); SIs(src
, dsp
*4+a
*2+b
, sz
); F_____
;
5768 switch (op
[1] & 0x00)
5771 goto op_semantics_39
;
5777 switch (op
[1] & 0x00)
5780 goto op_semantics_39
;
5786 switch (op
[1] & 0x00)
5789 goto op_semantics_39
;
5795 switch (op
[1] & 0x00)
5798 goto op_semantics_39
;
5804 switch (op
[1] & 0x00)
5807 goto op_semantics_39
;
5813 switch (op
[1] & 0x00)
5816 goto op_semantics_39
;
5822 switch (op
[1] & 0x00)
5825 goto op_semantics_39
;
5831 switch (op
[1] & 0x00)
5834 goto op_semantics_38
;
5840 switch (op
[1] & 0x00)
5843 goto op_semantics_38
;
5849 switch (op
[1] & 0x00)
5852 goto op_semantics_38
;
5858 switch (op
[1] & 0x00)
5861 goto op_semantics_38
;
5867 switch (op
[1] & 0x00)
5870 goto op_semantics_38
;
5876 switch (op
[1] & 0x00)
5879 goto op_semantics_38
;
5885 switch (op
[1] & 0x00)
5888 goto op_semantics_38
;
5894 switch (op
[1] & 0x00)
5897 goto op_semantics_38
;
5903 switch (op
[1] & 0x00)
5906 goto op_semantics_39
;
5912 switch (op
[1] & 0x00)
5915 goto op_semantics_39
;
5921 switch (op
[1] & 0x00)
5924 goto op_semantics_39
;
5930 switch (op
[1] & 0x00)
5933 goto op_semantics_39
;
5939 switch (op
[1] & 0x00)
5942 goto op_semantics_39
;
5948 switch (op
[1] & 0x00)
5951 goto op_semantics_39
;
5957 switch (op
[1] & 0x00)
5960 goto op_semantics_39
;
5966 switch (op
[1] & 0x00)
5969 goto op_semantics_39
;
5975 switch (op
[1] & 0x00)
5978 goto op_semantics_38
;
5984 switch (op
[1] & 0x00)
5987 goto op_semantics_38
;
5993 switch (op
[1] & 0x00)
5996 goto op_semantics_38
;
6002 switch (op
[1] & 0x00)
6005 goto op_semantics_38
;
6011 switch (op
[1] & 0x00)
6014 goto op_semantics_38
;
6020 switch (op
[1] & 0x00)
6023 goto op_semantics_38
;
6029 switch (op
[1] & 0x00)
6032 goto op_semantics_38
;
6038 switch (op
[1] & 0x00)
6041 goto op_semantics_38
;
6047 switch (op
[1] & 0x00)
6050 goto op_semantics_39
;
6056 switch (op
[1] & 0x00)
6059 goto op_semantics_39
;
6065 switch (op
[1] & 0x00)
6068 goto op_semantics_39
;
6074 switch (op
[1] & 0x00)
6077 goto op_semantics_39
;
6083 switch (op
[1] & 0x00)
6086 goto op_semantics_39
;
6092 switch (op
[1] & 0x00)
6095 goto op_semantics_39
;
6101 switch (op
[1] & 0x00)
6104 goto op_semantics_39
;
6110 switch (op
[1] & 0x00)
6113 goto op_semantics_39
;
6119 switch (op
[1] & 0x00)
6124 /** 1011 w dsp a src b dst movu%s %1, %0 */
6125 #line 329 "rx-decode.opc"
6126 int w AU
= (op
[0] >> 3) & 0x01;
6127 #line 329 "rx-decode.opc"
6128 int dsp AU
= op
[0] & 0x07;
6129 #line 329 "rx-decode.opc"
6130 int a AU
= (op
[1] >> 7) & 0x01;
6131 #line 329 "rx-decode.opc"
6132 int src AU
= (op
[1] >> 4) & 0x07;
6133 #line 329 "rx-decode.opc"
6134 int b AU
= (op
[1] >> 3) & 0x01;
6135 #line 329 "rx-decode.opc"
6136 int dst AU
= op
[1] & 0x07;
6139 printf ("\033[33m%s\033[0m %02x %02x\n",
6140 "/** 1011 w dsp a src b dst movu%s %1, %0 */",
6142 printf (" w = 0x%x,", w
);
6143 printf (" dsp = 0x%x,", dsp
);
6144 printf (" a = 0x%x,", a
);
6145 printf (" src = 0x%x,", src
);
6146 printf (" b = 0x%x,", b
);
6147 printf (" dst = 0x%x\n", dst
);
6149 SYNTAX("movu%s %1, %0");
6150 #line 329 "rx-decode.opc"
6151 ID(mov
); uBWL(w
); DR(dst
); SIs(src
, dsp
*4+a
*2+b
, w
); F_____
;
6159 switch (op
[1] & 0x00)
6162 goto op_semantics_40
;
6168 switch (op
[1] & 0x00)
6171 goto op_semantics_40
;
6177 switch (op
[1] & 0x00)
6180 goto op_semantics_40
;
6186 switch (op
[1] & 0x00)
6189 goto op_semantics_40
;
6195 switch (op
[1] & 0x00)
6198 goto op_semantics_40
;
6204 switch (op
[1] & 0x00)
6207 goto op_semantics_40
;
6213 switch (op
[1] & 0x00)
6216 goto op_semantics_40
;
6222 switch (op
[1] & 0x00)
6225 goto op_semantics_40
;
6231 switch (op
[1] & 0x00)
6234 goto op_semantics_40
;
6240 switch (op
[1] & 0x00)
6243 goto op_semantics_40
;
6249 switch (op
[1] & 0x00)
6252 goto op_semantics_40
;
6258 switch (op
[1] & 0x00)
6261 goto op_semantics_40
;
6267 switch (op
[1] & 0x00)
6270 goto op_semantics_40
;
6276 switch (op
[1] & 0x00)
6279 goto op_semantics_40
;
6285 switch (op
[1] & 0x00)
6288 goto op_semantics_40
;
6294 switch (op
[1] & 0x00)
6299 /** 11sz sd ss rsrc rdst mov%s %1, %0 */
6300 #line 287 "rx-decode.opc"
6301 int sz AU
= (op
[0] >> 4) & 0x03;
6302 #line 287 "rx-decode.opc"
6303 int sd AU
= (op
[0] >> 2) & 0x03;
6304 #line 287 "rx-decode.opc"
6305 int ss AU
= op
[0] & 0x03;
6306 #line 287 "rx-decode.opc"
6307 int rsrc AU
= (op
[1] >> 4) & 0x0f;
6308 #line 287 "rx-decode.opc"
6309 int rdst AU
= op
[1] & 0x0f;
6312 printf ("\033[33m%s\033[0m %02x %02x\n",
6313 "/** 11sz sd ss rsrc rdst mov%s %1, %0 */",
6315 printf (" sz = 0x%x,", sz
);
6316 printf (" sd = 0x%x,", sd
);
6317 printf (" ss = 0x%x,", ss
);
6318 printf (" rsrc = 0x%x,", rsrc
);
6319 printf (" rdst = 0x%x\n", rdst
);
6321 SYNTAX("mov%s %1, %0");
6322 #line 287 "rx-decode.opc"
6323 if (ss
== 3 && sz
== 2 && rsrc
== 0 && rdst
== 0)
6330 ID(mov
); sBWL(sz
); F_____
;
6331 if ((ss
== 3) && (sd
!= 3))
6333 SD(ss
, rdst
, sz
); DD(sd
, rsrc
, sz
);
6337 SD(ss
, rsrc
, sz
); DD(sd
, rdst
, sz
);
6347 switch (op
[1] & 0x00)
6350 goto op_semantics_41
;
6356 switch (op
[1] & 0x00)
6359 goto op_semantics_41
;
6365 switch (op
[1] & 0x00)
6368 goto op_semantics_41
;
6374 switch (op
[1] & 0x00)
6377 goto op_semantics_41
;
6383 switch (op
[1] & 0x00)
6386 goto op_semantics_41
;
6392 switch (op
[1] & 0x00)
6395 goto op_semantics_41
;
6401 switch (op
[1] & 0x00)
6404 goto op_semantics_41
;
6410 switch (op
[1] & 0x00)
6413 goto op_semantics_41
;
6419 switch (op
[1] & 0x00)
6422 goto op_semantics_41
;
6428 switch (op
[1] & 0x00)
6431 goto op_semantics_41
;
6437 switch (op
[1] & 0x00)
6440 goto op_semantics_41
;
6446 switch (op
[1] & 0x00)
6449 goto op_semantics_41
;
6455 switch (op
[1] & 0x00)
6458 goto op_semantics_41
;
6464 switch (op
[1] & 0x00)
6467 goto op_semantics_41
;
6473 switch (op
[1] & 0x00)
6476 goto op_semantics_41
;
6482 switch (op
[1] & 0x00)
6485 goto op_semantics_41
;
6491 switch (op
[1] & 0x00)
6494 goto op_semantics_41
;
6500 switch (op
[1] & 0x00)
6503 goto op_semantics_41
;
6509 switch (op
[1] & 0x00)
6512 goto op_semantics_41
;
6518 switch (op
[1] & 0x00)
6521 goto op_semantics_41
;
6527 switch (op
[1] & 0x00)
6530 goto op_semantics_41
;
6536 switch (op
[1] & 0x00)
6539 goto op_semantics_41
;
6545 switch (op
[1] & 0x00)
6548 goto op_semantics_41
;
6554 switch (op
[1] & 0x00)
6557 goto op_semantics_41
;
6563 switch (op
[1] & 0x00)
6566 goto op_semantics_41
;
6572 switch (op
[1] & 0x00)
6575 goto op_semantics_41
;
6581 switch (op
[1] & 0x00)
6584 goto op_semantics_41
;
6590 switch (op
[1] & 0x00)
6593 goto op_semantics_41
;
6599 switch (op
[1] & 0x00)
6602 goto op_semantics_41
;
6608 switch (op
[1] & 0x00)
6611 goto op_semantics_41
;
6617 switch (op
[1] & 0x00)
6620 goto op_semantics_41
;
6626 switch (op
[1] & 0x00)
6629 goto op_semantics_41
;
6635 switch (op
[1] & 0x00)
6638 goto op_semantics_41
;
6644 switch (op
[1] & 0x00)
6647 goto op_semantics_41
;
6653 switch (op
[1] & 0x00)
6656 goto op_semantics_41
;
6662 switch (op
[1] & 0x00)
6665 goto op_semantics_41
;
6671 switch (op
[1] & 0x00)
6674 goto op_semantics_41
;
6680 switch (op
[1] & 0x00)
6683 goto op_semantics_41
;
6689 switch (op
[1] & 0x00)
6692 goto op_semantics_41
;
6698 switch (op
[1] & 0x00)
6701 goto op_semantics_41
;
6707 switch (op
[1] & 0x00)
6710 goto op_semantics_41
;
6716 switch (op
[1] & 0x00)
6719 goto op_semantics_41
;
6725 switch (op
[1] & 0x00)
6728 goto op_semantics_41
;
6734 switch (op
[1] & 0x00)
6737 goto op_semantics_41
;
6743 switch (op
[1] & 0x00)
6746 goto op_semantics_41
;
6752 switch (op
[1] & 0x00)
6755 goto op_semantics_41
;
6761 switch (op
[1] & 0x00)
6764 goto op_semantics_41
;
6770 switch (op
[1] & 0x08)
6775 /** 1111 00sd rdst 0bit bset #%1, %0%S0 */
6776 #line 874 "rx-decode.opc"
6777 int sd AU
= op
[0] & 0x03;
6778 #line 874 "rx-decode.opc"
6779 int rdst AU
= (op
[1] >> 4) & 0x0f;
6780 #line 874 "rx-decode.opc"
6781 int bit AU
= op
[1] & 0x07;
6784 printf ("\033[33m%s\033[0m %02x %02x\n",
6785 "/** 1111 00sd rdst 0bit bset #%1, %0%S0 */",
6787 printf (" sd = 0x%x,", sd
);
6788 printf (" rdst = 0x%x,", rdst
);
6789 printf (" bit = 0x%x\n", bit
);
6791 SYNTAX("bset #%1, %0%S0");
6792 #line 874 "rx-decode.opc"
6793 ID(bset
); BWL(BSIZE
); SC(bit
); DD(sd
, rdst
, BSIZE
); F_____
;
6800 /** 1111 00sd rdst 1bit bclr #%1, %0%S0 */
6801 #line 884 "rx-decode.opc"
6802 int sd AU
= op
[0] & 0x03;
6803 #line 884 "rx-decode.opc"
6804 int rdst AU
= (op
[1] >> 4) & 0x0f;
6805 #line 884 "rx-decode.opc"
6806 int bit AU
= op
[1] & 0x07;
6809 printf ("\033[33m%s\033[0m %02x %02x\n",
6810 "/** 1111 00sd rdst 1bit bclr #%1, %0%S0 */",
6812 printf (" sd = 0x%x,", sd
);
6813 printf (" rdst = 0x%x,", rdst
);
6814 printf (" bit = 0x%x\n", bit
);
6816 SYNTAX("bclr #%1, %0%S0");
6817 #line 884 "rx-decode.opc"
6818 ID(bclr
); BWL(BSIZE
); SC(bit
); DD(sd
, rdst
, BSIZE
); F_____
;
6826 switch (op
[1] & 0x08)
6829 goto op_semantics_42
;
6832 goto op_semantics_43
;
6838 switch (op
[1] & 0x08)
6841 goto op_semantics_42
;
6844 goto op_semantics_43
;
6850 switch (op
[1] & 0x08)
6853 goto op_semantics_42
;
6856 goto op_semantics_43
;
6862 switch (op
[1] & 0x0c)
6868 /** 1111 01sd rdst 0bit btst #%2, %1%S1 */
6869 #line 894 "rx-decode.opc"
6870 int sd AU
= op
[0] & 0x03;
6871 #line 894 "rx-decode.opc"
6872 int rdst AU
= (op
[1] >> 4) & 0x0f;
6873 #line 894 "rx-decode.opc"
6874 int bit AU
= op
[1] & 0x07;
6877 printf ("\033[33m%s\033[0m %02x %02x\n",
6878 "/** 1111 01sd rdst 0bit btst #%2, %1%S1 */",
6880 printf (" sd = 0x%x,", sd
);
6881 printf (" rdst = 0x%x,", rdst
);
6882 printf (" bit = 0x%x\n", bit
);
6884 SYNTAX("btst #%2, %1%S1");
6885 #line 894 "rx-decode.opc"
6886 ID(btst
); BWL(BSIZE
); S2C(bit
); SD(sd
, rdst
, BSIZE
); F___ZC
;
6893 /** 1111 01ss rsrc 10sz push%s %1 */
6894 #line 354 "rx-decode.opc"
6895 int ss AU
= op
[0] & 0x03;
6896 #line 354 "rx-decode.opc"
6897 int rsrc AU
= (op
[1] >> 4) & 0x0f;
6898 #line 354 "rx-decode.opc"
6899 int sz AU
= op
[1] & 0x03;
6902 printf ("\033[33m%s\033[0m %02x %02x\n",
6903 "/** 1111 01ss rsrc 10sz push%s %1 */",
6905 printf (" ss = 0x%x,", ss
);
6906 printf (" rsrc = 0x%x,", rsrc
);
6907 printf (" sz = 0x%x\n", sz
);
6909 SYNTAX("push%s %1");
6910 #line 354 "rx-decode.opc"
6911 ID(mov
); BWL(sz
); OP(0, RX_Operand_Predec
, 0, 0); SD(ss
, rsrc
, sz
); F_____
;
6913 /*----------------------------------------------------------------------*/
6918 default: UNSUPPORTED(); break;
6923 switch (op
[1] & 0x0c)
6927 goto op_semantics_44
;
6930 goto op_semantics_45
;
6932 default: UNSUPPORTED(); break;
6937 switch (op
[1] & 0x0c)
6941 goto op_semantics_44
;
6944 goto op_semantics_45
;
6946 default: UNSUPPORTED(); break;
6951 switch (op
[1] & 0x0c)
6955 goto op_semantics_44
;
6958 goto op_semantics_45
;
6960 default: UNSUPPORTED(); break;
6965 switch (op
[1] & 0x00)
6970 /** 1111 10sd rdst im sz mov%s #%1, %0 */
6971 #line 265 "rx-decode.opc"
6972 int sd AU
= op
[0] & 0x03;
6973 #line 265 "rx-decode.opc"
6974 int rdst AU
= (op
[1] >> 4) & 0x0f;
6975 #line 265 "rx-decode.opc"
6976 int im AU
= (op
[1] >> 2) & 0x03;
6977 #line 265 "rx-decode.opc"
6978 int sz AU
= op
[1] & 0x03;
6981 printf ("\033[33m%s\033[0m %02x %02x\n",
6982 "/** 1111 10sd rdst im sz mov%s #%1, %0 */",
6984 printf (" sd = 0x%x,", sd
);
6985 printf (" rdst = 0x%x,", rdst
);
6986 printf (" im = 0x%x,", im
);
6987 printf (" sz = 0x%x\n", sz
);
6989 SYNTAX("mov%s #%1, %0");
6990 #line 265 "rx-decode.opc"
6991 ID(mov
); DD(sd
, rdst
, sz
);
6992 if ((im
== 1 && sz
== 0)
6993 || (im
== 2 && sz
== 1)
6994 || (im
== 0 && sz
== 2))
7012 switch (op
[1] & 0x00)
7015 goto op_semantics_46
;
7021 switch (op
[1] & 0x00)
7024 goto op_semantics_46
;
7030 switch (op
[1] & 0x00)
7033 goto op_semantics_46
;
7039 switch (op
[1] & 0xff)
7043 switch (op
[2] & 0x00)
7047 /** 1111 1100 0000 0011 rsrc rdst sbb %1, %0 */
7048 #line 528 "rx-decode.opc"
7049 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7050 #line 528 "rx-decode.opc"
7051 int rdst AU
= op
[2] & 0x0f;
7054 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7055 "/** 1111 1100 0000 0011 rsrc rdst sbb %1, %0 */",
7056 op
[0], op
[1], op
[2]);
7057 printf (" rsrc = 0x%x,", rsrc
);
7058 printf (" rdst = 0x%x\n", rdst
);
7060 SYNTAX("sbb %1, %0");
7061 #line 528 "rx-decode.opc"
7062 ID(sbb
); SR (rsrc
); DR(rdst
); F_OSZC
;
7064 /* FIXME: only supports .L */
7071 switch (op
[2] & 0x00)
7075 /** 1111 1100 0000 0111 rsrc rdst neg %2, %0 */
7076 #line 459 "rx-decode.opc"
7077 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7078 #line 459 "rx-decode.opc"
7079 int rdst AU
= op
[2] & 0x0f;
7082 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7083 "/** 1111 1100 0000 0111 rsrc rdst neg %2, %0 */",
7084 op
[0], op
[1], op
[2]);
7085 printf (" rsrc = 0x%x,", rsrc
);
7086 printf (" rdst = 0x%x\n", rdst
);
7088 SYNTAX("neg %2, %0");
7089 #line 459 "rx-decode.opc"
7090 ID(sub
); DR(rdst
); SC(0); S2R(rsrc
); F_OSZC
;
7092 /*----------------------------------------------------------------------*/
7101 switch (op
[2] & 0x00)
7105 /** 1111 1100 0000 1011 rsrc rdst adc %1, %0 */
7106 #line 468 "rx-decode.opc"
7107 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7108 #line 468 "rx-decode.opc"
7109 int rdst AU
= op
[2] & 0x0f;
7112 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7113 "/** 1111 1100 0000 1011 rsrc rdst adc %1, %0 */",
7114 op
[0], op
[1], op
[2]);
7115 printf (" rsrc = 0x%x,", rsrc
);
7116 printf (" rdst = 0x%x\n", rdst
);
7118 SYNTAX("adc %1, %0");
7119 #line 468 "rx-decode.opc"
7120 ID(adc
); SR(rsrc
); DR(rdst
); F_OSZC
;
7128 switch (op
[2] & 0x00)
7132 /** 1111 1100 0000 1111 rsrc rdst abs %1, %0 */
7133 #line 541 "rx-decode.opc"
7134 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7135 #line 541 "rx-decode.opc"
7136 int rdst AU
= op
[2] & 0x0f;
7139 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7140 "/** 1111 1100 0000 1111 rsrc rdst abs %1, %0 */",
7141 op
[0], op
[1], op
[2]);
7142 printf (" rsrc = 0x%x,", rsrc
);
7143 printf (" rdst = 0x%x\n", rdst
);
7145 SYNTAX("abs %1, %0");
7146 #line 541 "rx-decode.opc"
7147 ID(abs
); DR(rdst
); SR(rsrc
); F_OSZ_
;
7149 /*----------------------------------------------------------------------*/
7158 switch (op
[2] & 0x00)
7163 /** 1111 1100 0001 00ss rsrc rdst max %1%S1, %0 */
7164 #line 550 "rx-decode.opc"
7165 int ss AU
= op
[1] & 0x03;
7166 #line 550 "rx-decode.opc"
7167 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7168 #line 550 "rx-decode.opc"
7169 int rdst AU
= op
[2] & 0x0f;
7172 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7173 "/** 1111 1100 0001 00ss rsrc rdst max %1%S1, %0 */",
7174 op
[0], op
[1], op
[2]);
7175 printf (" ss = 0x%x,", ss
);
7176 printf (" rsrc = 0x%x,", rsrc
);
7177 printf (" rdst = 0x%x\n", rdst
);
7179 SYNTAX("max %1%S1, %0");
7180 #line 550 "rx-decode.opc"
7181 if (ss
== 3 && rsrc
== 0 && rdst
== 0)
7188 ID(max
); SP(ss
, rsrc
); DR(rdst
);
7197 switch (op
[2] & 0x00)
7200 goto op_semantics_47
;
7206 switch (op
[2] & 0x00)
7209 goto op_semantics_47
;
7215 switch (op
[2] & 0x00)
7218 goto op_semantics_47
;
7224 switch (op
[2] & 0x00)
7229 /** 1111 1100 0001 01ss rsrc rdst min %1%S1, %0 */
7230 #line 570 "rx-decode.opc"
7231 int ss AU
= op
[1] & 0x03;
7232 #line 570 "rx-decode.opc"
7233 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7234 #line 570 "rx-decode.opc"
7235 int rdst AU
= op
[2] & 0x0f;
7238 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7239 "/** 1111 1100 0001 01ss rsrc rdst min %1%S1, %0 */",
7240 op
[0], op
[1], op
[2]);
7241 printf (" ss = 0x%x,", ss
);
7242 printf (" rsrc = 0x%x,", rsrc
);
7243 printf (" rdst = 0x%x\n", rdst
);
7245 SYNTAX("min %1%S1, %0");
7246 #line 570 "rx-decode.opc"
7247 ID(min
); SP(ss
, rsrc
); DR(rdst
);
7255 switch (op
[2] & 0x00)
7258 goto op_semantics_48
;
7264 switch (op
[2] & 0x00)
7267 goto op_semantics_48
;
7273 switch (op
[2] & 0x00)
7276 goto op_semantics_48
;
7282 switch (op
[2] & 0x00)
7287 /** 1111 1100 0001 10ss rsrc rdst emul %1%S1, %0 */
7288 #line 600 "rx-decode.opc"
7289 int ss AU
= op
[1] & 0x03;
7290 #line 600 "rx-decode.opc"
7291 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7292 #line 600 "rx-decode.opc"
7293 int rdst AU
= op
[2] & 0x0f;
7296 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7297 "/** 1111 1100 0001 10ss rsrc rdst emul %1%S1, %0 */",
7298 op
[0], op
[1], op
[2]);
7299 printf (" ss = 0x%x,", ss
);
7300 printf (" rsrc = 0x%x,", rsrc
);
7301 printf (" rdst = 0x%x\n", rdst
);
7303 SYNTAX("emul %1%S1, %0");
7304 #line 600 "rx-decode.opc"
7305 ID(emul
); SP(ss
, rsrc
); DR(rdst
);
7313 switch (op
[2] & 0x00)
7316 goto op_semantics_49
;
7322 switch (op
[2] & 0x00)
7325 goto op_semantics_49
;
7331 switch (op
[2] & 0x00)
7334 goto op_semantics_49
;
7340 switch (op
[2] & 0x00)
7345 /** 1111 1100 0001 11ss rsrc rdst emulu %1%S1, %0 */
7346 #line 612 "rx-decode.opc"
7347 int ss AU
= op
[1] & 0x03;
7348 #line 612 "rx-decode.opc"
7349 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7350 #line 612 "rx-decode.opc"
7351 int rdst AU
= op
[2] & 0x0f;
7354 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7355 "/** 1111 1100 0001 11ss rsrc rdst emulu %1%S1, %0 */",
7356 op
[0], op
[1], op
[2]);
7357 printf (" ss = 0x%x,", ss
);
7358 printf (" rsrc = 0x%x,", rsrc
);
7359 printf (" rdst = 0x%x\n", rdst
);
7361 SYNTAX("emulu %1%S1, %0");
7362 #line 612 "rx-decode.opc"
7363 ID(emulu
); SP(ss
, rsrc
); DR(rdst
);
7371 switch (op
[2] & 0x00)
7374 goto op_semantics_50
;
7380 switch (op
[2] & 0x00)
7383 goto op_semantics_50
;
7389 switch (op
[2] & 0x00)
7392 goto op_semantics_50
;
7398 switch (op
[2] & 0x00)
7403 /** 1111 1100 0010 00ss rsrc rdst div %1%S1, %0 */
7404 #line 624 "rx-decode.opc"
7405 int ss AU
= op
[1] & 0x03;
7406 #line 624 "rx-decode.opc"
7407 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7408 #line 624 "rx-decode.opc"
7409 int rdst AU
= op
[2] & 0x0f;
7412 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7413 "/** 1111 1100 0010 00ss rsrc rdst div %1%S1, %0 */",
7414 op
[0], op
[1], op
[2]);
7415 printf (" ss = 0x%x,", ss
);
7416 printf (" rsrc = 0x%x,", rsrc
);
7417 printf (" rdst = 0x%x\n", rdst
);
7419 SYNTAX("div %1%S1, %0");
7420 #line 624 "rx-decode.opc"
7421 ID(div
); SP(ss
, rsrc
); DR(rdst
); F_O___
;
7429 switch (op
[2] & 0x00)
7432 goto op_semantics_51
;
7438 switch (op
[2] & 0x00)
7441 goto op_semantics_51
;
7447 switch (op
[2] & 0x00)
7450 goto op_semantics_51
;
7456 switch (op
[2] & 0x00)
7461 /** 1111 1100 0010 01ss rsrc rdst divu %1%S1, %0 */
7462 #line 636 "rx-decode.opc"
7463 int ss AU
= op
[1] & 0x03;
7464 #line 636 "rx-decode.opc"
7465 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7466 #line 636 "rx-decode.opc"
7467 int rdst AU
= op
[2] & 0x0f;
7470 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7471 "/** 1111 1100 0010 01ss rsrc rdst divu %1%S1, %0 */",
7472 op
[0], op
[1], op
[2]);
7473 printf (" ss = 0x%x,", ss
);
7474 printf (" rsrc = 0x%x,", rsrc
);
7475 printf (" rdst = 0x%x\n", rdst
);
7477 SYNTAX("divu %1%S1, %0");
7478 #line 636 "rx-decode.opc"
7479 ID(divu
); SP(ss
, rsrc
); DR(rdst
); F_O___
;
7487 switch (op
[2] & 0x00)
7490 goto op_semantics_52
;
7496 switch (op
[2] & 0x00)
7499 goto op_semantics_52
;
7505 switch (op
[2] & 0x00)
7508 goto op_semantics_52
;
7514 switch (op
[2] & 0x00)
7519 /** 1111 1100 0011 00ss rsrc rdst tst %1%S1, %2 */
7520 #line 447 "rx-decode.opc"
7521 int ss AU
= op
[1] & 0x03;
7522 #line 447 "rx-decode.opc"
7523 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7524 #line 447 "rx-decode.opc"
7525 int rdst AU
= op
[2] & 0x0f;
7528 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7529 "/** 1111 1100 0011 00ss rsrc rdst tst %1%S1, %2 */",
7530 op
[0], op
[1], op
[2]);
7531 printf (" ss = 0x%x,", ss
);
7532 printf (" rsrc = 0x%x,", rsrc
);
7533 printf (" rdst = 0x%x\n", rdst
);
7535 SYNTAX("tst %1%S1, %2");
7536 #line 447 "rx-decode.opc"
7537 ID(and); SP(ss
, rsrc
); S2R(rdst
); F__SZ_
;
7545 switch (op
[2] & 0x00)
7548 goto op_semantics_53
;
7554 switch (op
[2] & 0x00)
7557 goto op_semantics_53
;
7563 switch (op
[2] & 0x00)
7566 goto op_semantics_53
;
7572 switch (op
[2] & 0x00)
7577 /** 1111 1100 0011 01ss rsrc rdst xor %1%S1, %0 */
7578 #line 426 "rx-decode.opc"
7579 int ss AU
= op
[1] & 0x03;
7580 #line 426 "rx-decode.opc"
7581 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7582 #line 426 "rx-decode.opc"
7583 int rdst AU
= op
[2] & 0x0f;
7586 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7587 "/** 1111 1100 0011 01ss rsrc rdst xor %1%S1, %0 */",
7588 op
[0], op
[1], op
[2]);
7589 printf (" ss = 0x%x,", ss
);
7590 printf (" rsrc = 0x%x,", rsrc
);
7591 printf (" rdst = 0x%x\n", rdst
);
7593 SYNTAX("xor %1%S1, %0");
7594 #line 426 "rx-decode.opc"
7595 ID(xor); SP(ss
, rsrc
); DR(rdst
); F__SZ_
;
7603 switch (op
[2] & 0x00)
7606 goto op_semantics_54
;
7612 switch (op
[2] & 0x00)
7615 goto op_semantics_54
;
7621 switch (op
[2] & 0x00)
7624 goto op_semantics_54
;
7630 switch (op
[2] & 0x00)
7634 /** 1111 1100 0011 1011 rsrc rdst not %1, %0 */
7635 #line 438 "rx-decode.opc"
7636 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7637 #line 438 "rx-decode.opc"
7638 int rdst AU
= op
[2] & 0x0f;
7641 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7642 "/** 1111 1100 0011 1011 rsrc rdst not %1, %0 */",
7643 op
[0], op
[1], op
[2]);
7644 printf (" rsrc = 0x%x,", rsrc
);
7645 printf (" rdst = 0x%x\n", rdst
);
7647 SYNTAX("not %1, %0");
7648 #line 438 "rx-decode.opc"
7649 ID(xor); DR(rdst
); SR(rsrc
); S2C(~0); F__SZ_
;
7651 /*----------------------------------------------------------------------*/
7660 switch (op
[2] & 0x00)
7665 /** 1111 1100 0100 00ss rsrc rdst xchg %1%S1, %0 */
7666 #line 360 "rx-decode.opc"
7667 int ss AU
= op
[1] & 0x03;
7668 #line 360 "rx-decode.opc"
7669 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7670 #line 360 "rx-decode.opc"
7671 int rdst AU
= op
[2] & 0x0f;
7674 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7675 "/** 1111 1100 0100 00ss rsrc rdst xchg %1%S1, %0 */",
7676 op
[0], op
[1], op
[2]);
7677 printf (" ss = 0x%x,", ss
);
7678 printf (" rsrc = 0x%x,", rsrc
);
7679 printf (" rdst = 0x%x\n", rdst
);
7681 SYNTAX("xchg %1%S1, %0");
7682 #line 360 "rx-decode.opc"
7683 ID(xchg
); DR(rdst
); SP(ss
, rsrc
);
7691 switch (op
[2] & 0x00)
7694 goto op_semantics_55
;
7700 switch (op
[2] & 0x00)
7703 goto op_semantics_55
;
7709 switch (op
[2] & 0x00)
7712 goto op_semantics_55
;
7718 switch (op
[2] & 0x00)
7723 /** 1111 1100 0100 01sd rsrc rdst itof %1%S1, %0 */
7724 #line 865 "rx-decode.opc"
7725 int sd AU
= op
[1] & 0x03;
7726 #line 865 "rx-decode.opc"
7727 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7728 #line 865 "rx-decode.opc"
7729 int rdst AU
= op
[2] & 0x0f;
7732 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7733 "/** 1111 1100 0100 01sd rsrc rdst itof %1%S1, %0 */",
7734 op
[0], op
[1], op
[2]);
7735 printf (" sd = 0x%x,", sd
);
7736 printf (" rsrc = 0x%x,", rsrc
);
7737 printf (" rdst = 0x%x\n", rdst
);
7739 SYNTAX("itof %1%S1, %0");
7740 #line 865 "rx-decode.opc"
7741 ID(itof
); DR (rdst
); SP(sd
, rsrc
); F__SZ_
;
7749 switch (op
[2] & 0x00)
7752 goto op_semantics_56
;
7758 switch (op
[2] & 0x00)
7761 goto op_semantics_56
;
7767 switch (op
[2] & 0x00)
7770 goto op_semantics_56
;
7776 switch (op
[2] & 0x00)
7781 /** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */
7782 #line 877 "rx-decode.opc"
7783 int sd AU
= op
[1] & 0x03;
7784 #line 877 "rx-decode.opc"
7785 int rdst AU
= (op
[2] >> 4) & 0x0f;
7786 #line 877 "rx-decode.opc"
7787 int rsrc AU
= op
[2] & 0x0f;
7790 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7791 "/** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */",
7792 op
[0], op
[1], op
[2]);
7793 printf (" sd = 0x%x,", sd
);
7794 printf (" rdst = 0x%x,", rdst
);
7795 printf (" rsrc = 0x%x\n", rsrc
);
7797 SYNTAX("bset %1, %0%S0");
7798 #line 877 "rx-decode.opc"
7799 ID(bset
); BWL(BSIZE
); SR(rsrc
); DD(sd
, rdst
, BSIZE
); F_____
;
7807 switch (op
[2] & 0x00)
7810 goto op_semantics_57
;
7816 switch (op
[2] & 0x00)
7819 goto op_semantics_57
;
7825 switch (op
[2] & 0x00)
7828 goto op_semantics_57
;
7834 switch (op
[2] & 0x00)
7839 /** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */
7840 #line 887 "rx-decode.opc"
7841 int sd AU
= op
[1] & 0x03;
7842 #line 887 "rx-decode.opc"
7843 int rdst AU
= (op
[2] >> 4) & 0x0f;
7844 #line 887 "rx-decode.opc"
7845 int rsrc AU
= op
[2] & 0x0f;
7848 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7849 "/** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */",
7850 op
[0], op
[1], op
[2]);
7851 printf (" sd = 0x%x,", sd
);
7852 printf (" rdst = 0x%x,", rdst
);
7853 printf (" rsrc = 0x%x\n", rsrc
);
7855 SYNTAX("bclr %1, %0%S0");
7856 #line 887 "rx-decode.opc"
7857 ID(bclr
); BWL(BSIZE
); SR(rsrc
); DD(sd
, rdst
, BSIZE
); F_____
;
7865 switch (op
[2] & 0x00)
7868 goto op_semantics_58
;
7874 switch (op
[2] & 0x00)
7877 goto op_semantics_58
;
7883 switch (op
[2] & 0x00)
7886 goto op_semantics_58
;
7892 switch (op
[2] & 0x00)
7897 /** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */
7898 #line 897 "rx-decode.opc"
7899 int sd AU
= op
[1] & 0x03;
7900 #line 897 "rx-decode.opc"
7901 int rdst AU
= (op
[2] >> 4) & 0x0f;
7902 #line 897 "rx-decode.opc"
7903 int rsrc AU
= op
[2] & 0x0f;
7906 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7907 "/** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */",
7908 op
[0], op
[1], op
[2]);
7909 printf (" sd = 0x%x,", sd
);
7910 printf (" rdst = 0x%x,", rdst
);
7911 printf (" rsrc = 0x%x\n", rsrc
);
7913 SYNTAX("btst %2, %1%S1");
7914 #line 897 "rx-decode.opc"
7915 ID(btst
); BWL(BSIZE
); S2R(rsrc
); SD(sd
, rdst
, BSIZE
); F___ZC
;
7923 switch (op
[2] & 0x00)
7926 goto op_semantics_59
;
7932 switch (op
[2] & 0x00)
7935 goto op_semantics_59
;
7941 switch (op
[2] & 0x00)
7944 goto op_semantics_59
;
7950 switch (op
[2] & 0x00)
7955 /** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */
7956 #line 907 "rx-decode.opc"
7957 int sd AU
= op
[1] & 0x03;
7958 #line 907 "rx-decode.opc"
7959 int rdst AU
= (op
[2] >> 4) & 0x0f;
7960 #line 907 "rx-decode.opc"
7961 int rsrc AU
= op
[2] & 0x0f;
7964 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7965 "/** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */",
7966 op
[0], op
[1], op
[2]);
7967 printf (" sd = 0x%x,", sd
);
7968 printf (" rdst = 0x%x,", rdst
);
7969 printf (" rsrc = 0x%x\n", rsrc
);
7971 SYNTAX("bnot %1, %0%S0");
7972 #line 907 "rx-decode.opc"
7973 ID(bnot
); BWL(BSIZE
); SR(rsrc
); DD(sd
, rdst
, BSIZE
);
7981 switch (op
[2] & 0x00)
7984 goto op_semantics_60
;
7990 switch (op
[2] & 0x00)
7993 goto op_semantics_60
;
7999 switch (op
[2] & 0x00)
8002 goto op_semantics_60
;
8008 switch (op
[2] & 0x00)
8013 /** 1111 1100 1000 00sd rsrc rdst fsub %1%S1, %0 */
8014 #line 844 "rx-decode.opc"
8015 int sd AU
= op
[1] & 0x03;
8016 #line 844 "rx-decode.opc"
8017 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8018 #line 844 "rx-decode.opc"
8019 int rdst AU
= op
[2] & 0x0f;
8022 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8023 "/** 1111 1100 1000 00sd rsrc rdst fsub %1%S1, %0 */",
8024 op
[0], op
[1], op
[2]);
8025 printf (" sd = 0x%x,", sd
);
8026 printf (" rsrc = 0x%x,", rsrc
);
8027 printf (" rdst = 0x%x\n", rdst
);
8029 SYNTAX("fsub %1%S1, %0");
8030 #line 844 "rx-decode.opc"
8031 ID(fsub
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8039 switch (op
[2] & 0x00)
8042 goto op_semantics_61
;
8048 switch (op
[2] & 0x00)
8051 goto op_semantics_61
;
8057 switch (op
[2] & 0x00)
8060 goto op_semantics_61
;
8066 switch (op
[2] & 0x00)
8071 /** 1111 1100 1000 01sd rsrc rdst fcmp %1%S1, %0 */
8072 #line 838 "rx-decode.opc"
8073 int sd AU
= op
[1] & 0x03;
8074 #line 838 "rx-decode.opc"
8075 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8076 #line 838 "rx-decode.opc"
8077 int rdst AU
= op
[2] & 0x0f;
8080 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8081 "/** 1111 1100 1000 01sd rsrc rdst fcmp %1%S1, %0 */",
8082 op
[0], op
[1], op
[2]);
8083 printf (" sd = 0x%x,", sd
);
8084 printf (" rsrc = 0x%x,", rsrc
);
8085 printf (" rdst = 0x%x\n", rdst
);
8087 SYNTAX("fcmp %1%S1, %0");
8088 #line 838 "rx-decode.opc"
8089 ID(fcmp
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F_OSZ_
;
8097 switch (op
[2] & 0x00)
8100 goto op_semantics_62
;
8106 switch (op
[2] & 0x00)
8109 goto op_semantics_62
;
8115 switch (op
[2] & 0x00)
8118 goto op_semantics_62
;
8124 switch (op
[2] & 0x00)
8129 /** 1111 1100 1000 10sd rsrc rdst fadd %1%S1, %0 */
8130 #line 832 "rx-decode.opc"
8131 int sd AU
= op
[1] & 0x03;
8132 #line 832 "rx-decode.opc"
8133 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8134 #line 832 "rx-decode.opc"
8135 int rdst AU
= op
[2] & 0x0f;
8138 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8139 "/** 1111 1100 1000 10sd rsrc rdst fadd %1%S1, %0 */",
8140 op
[0], op
[1], op
[2]);
8141 printf (" sd = 0x%x,", sd
);
8142 printf (" rsrc = 0x%x,", rsrc
);
8143 printf (" rdst = 0x%x\n", rdst
);
8145 SYNTAX("fadd %1%S1, %0");
8146 #line 832 "rx-decode.opc"
8147 ID(fadd
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8155 switch (op
[2] & 0x00)
8158 goto op_semantics_63
;
8164 switch (op
[2] & 0x00)
8167 goto op_semantics_63
;
8173 switch (op
[2] & 0x00)
8176 goto op_semantics_63
;
8182 switch (op
[2] & 0x00)
8187 /** 1111 1100 1000 11sd rsrc rdst fmul %1%S1, %0 */
8188 #line 853 "rx-decode.opc"
8189 int sd AU
= op
[1] & 0x03;
8190 #line 853 "rx-decode.opc"
8191 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8192 #line 853 "rx-decode.opc"
8193 int rdst AU
= op
[2] & 0x0f;
8196 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8197 "/** 1111 1100 1000 11sd rsrc rdst fmul %1%S1, %0 */",
8198 op
[0], op
[1], op
[2]);
8199 printf (" sd = 0x%x,", sd
);
8200 printf (" rsrc = 0x%x,", rsrc
);
8201 printf (" rdst = 0x%x\n", rdst
);
8203 SYNTAX("fmul %1%S1, %0");
8204 #line 853 "rx-decode.opc"
8205 ID(fmul
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8213 switch (op
[2] & 0x00)
8216 goto op_semantics_64
;
8222 switch (op
[2] & 0x00)
8225 goto op_semantics_64
;
8231 switch (op
[2] & 0x00)
8234 goto op_semantics_64
;
8240 switch (op
[2] & 0x00)
8245 /** 1111 1100 1001 00sd rsrc rdst fdiv %1%S1, %0 */
8246 #line 859 "rx-decode.opc"
8247 int sd AU
= op
[1] & 0x03;
8248 #line 859 "rx-decode.opc"
8249 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8250 #line 859 "rx-decode.opc"
8251 int rdst AU
= op
[2] & 0x0f;
8254 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8255 "/** 1111 1100 1001 00sd rsrc rdst fdiv %1%S1, %0 */",
8256 op
[0], op
[1], op
[2]);
8257 printf (" sd = 0x%x,", sd
);
8258 printf (" rsrc = 0x%x,", rsrc
);
8259 printf (" rdst = 0x%x\n", rdst
);
8261 SYNTAX("fdiv %1%S1, %0");
8262 #line 859 "rx-decode.opc"
8263 ID(fdiv
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8271 switch (op
[2] & 0x00)
8274 goto op_semantics_65
;
8280 switch (op
[2] & 0x00)
8283 goto op_semantics_65
;
8289 switch (op
[2] & 0x00)
8292 goto op_semantics_65
;
8298 switch (op
[2] & 0x00)
8303 /** 1111 1100 1001 01sd rsrc rdst ftoi %1%S1, %0 */
8304 #line 847 "rx-decode.opc"
8305 int sd AU
= op
[1] & 0x03;
8306 #line 847 "rx-decode.opc"
8307 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8308 #line 847 "rx-decode.opc"
8309 int rdst AU
= op
[2] & 0x0f;
8312 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8313 "/** 1111 1100 1001 01sd rsrc rdst ftoi %1%S1, %0 */",
8314 op
[0], op
[1], op
[2]);
8315 printf (" sd = 0x%x,", sd
);
8316 printf (" rsrc = 0x%x,", rsrc
);
8317 printf (" rdst = 0x%x\n", rdst
);
8319 SYNTAX("ftoi %1%S1, %0");
8320 #line 847 "rx-decode.opc"
8321 ID(ftoi
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8329 switch (op
[2] & 0x00)
8332 goto op_semantics_66
;
8338 switch (op
[2] & 0x00)
8341 goto op_semantics_66
;
8347 switch (op
[2] & 0x00)
8350 goto op_semantics_66
;
8356 switch (op
[2] & 0x00)
8361 /** 1111 1100 1001 10sd rsrc rdst round %1%S1, %0 */
8362 #line 862 "rx-decode.opc"
8363 int sd AU
= op
[1] & 0x03;
8364 #line 862 "rx-decode.opc"
8365 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8366 #line 862 "rx-decode.opc"
8367 int rdst AU
= op
[2] & 0x0f;
8370 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8371 "/** 1111 1100 1001 10sd rsrc rdst round %1%S1, %0 */",
8372 op
[0], op
[1], op
[2]);
8373 printf (" sd = 0x%x,", sd
);
8374 printf (" rsrc = 0x%x,", rsrc
);
8375 printf (" rdst = 0x%x\n", rdst
);
8377 SYNTAX("round %1%S1, %0");
8378 #line 862 "rx-decode.opc"
8379 ID(round
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8387 switch (op
[2] & 0x00)
8390 goto op_semantics_67
;
8396 switch (op
[2] & 0x00)
8399 goto op_semantics_67
;
8405 switch (op
[2] & 0x00)
8408 goto op_semantics_67
;
8414 switch (op
[2] & 0x00)
8419 /** 1111 1100 1101 sz sd rdst cond sc%1%s %0 */
8420 #line 971 "rx-decode.opc"
8421 int sz AU
= (op
[1] >> 2) & 0x03;
8422 #line 971 "rx-decode.opc"
8423 int sd AU
= op
[1] & 0x03;
8424 #line 971 "rx-decode.opc"
8425 int rdst AU
= (op
[2] >> 4) & 0x0f;
8426 #line 971 "rx-decode.opc"
8427 int cond AU
= op
[2] & 0x0f;
8430 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8431 "/** 1111 1100 1101 sz sd rdst cond sc%1%s %0 */",
8432 op
[0], op
[1], op
[2]);
8433 printf (" sz = 0x%x,", sz
);
8434 printf (" sd = 0x%x,", sd
);
8435 printf (" rdst = 0x%x,", rdst
);
8436 printf (" cond = 0x%x\n", cond
);
8438 SYNTAX("sc%1%s %0");
8439 #line 971 "rx-decode.opc"
8440 ID(sccnd
); BWL(sz
); DD (sd
, rdst
, sz
); Scc(cond
);
8448 switch (op
[2] & 0x00)
8451 goto op_semantics_68
;
8457 switch (op
[2] & 0x00)
8460 goto op_semantics_68
;
8466 switch (op
[2] & 0x00)
8469 goto op_semantics_68
;
8475 switch (op
[2] & 0x00)
8478 goto op_semantics_68
;
8484 switch (op
[2] & 0x00)
8487 goto op_semantics_68
;
8493 switch (op
[2] & 0x00)
8496 goto op_semantics_68
;
8502 switch (op
[2] & 0x00)
8505 goto op_semantics_68
;
8511 switch (op
[2] & 0x00)
8514 goto op_semantics_68
;
8520 switch (op
[2] & 0x00)
8523 goto op_semantics_68
;
8529 switch (op
[2] & 0x00)
8532 goto op_semantics_68
;
8538 switch (op
[2] & 0x00)
8541 goto op_semantics_68
;
8547 switch (op
[2] & 0x0f)
8566 /** 1111 1100 111bit sd rdst cond bm%2 #%1, %0%S0 */
8567 #line 914 "rx-decode.opc"
8568 int bit AU
= (op
[1] >> 2) & 0x07;
8569 #line 914 "rx-decode.opc"
8570 int sd AU
= op
[1] & 0x03;
8571 #line 914 "rx-decode.opc"
8572 int rdst AU
= (op
[2] >> 4) & 0x0f;
8573 #line 914 "rx-decode.opc"
8574 int cond AU
= op
[2] & 0x0f;
8577 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8578 "/** 1111 1100 111bit sd rdst cond bm%2 #%1, %0%S0 */",
8579 op
[0], op
[1], op
[2]);
8580 printf (" bit = 0x%x,", bit
);
8581 printf (" sd = 0x%x,", sd
);
8582 printf (" rdst = 0x%x,", rdst
);
8583 printf (" cond = 0x%x\n", cond
);
8585 SYNTAX("bm%2 #%1, %0%S0");
8586 #line 914 "rx-decode.opc"
8587 ID(bmcc
); BWL(BSIZE
); S2cc(cond
); SC(bit
); DD(sd
, rdst
, BSIZE
);
8594 /** 1111 1100 111bit sd rdst 1111 bnot #%1, %0%S0 */
8595 #line 904 "rx-decode.opc"
8596 int bit AU
= (op
[1] >> 2) & 0x07;
8597 #line 904 "rx-decode.opc"
8598 int sd AU
= op
[1] & 0x03;
8599 #line 904 "rx-decode.opc"
8600 int rdst AU
= (op
[2] >> 4) & 0x0f;
8603 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8604 "/** 1111 1100 111bit sd rdst 1111 bnot #%1, %0%S0 */",
8605 op
[0], op
[1], op
[2]);
8606 printf (" bit = 0x%x,", bit
);
8607 printf (" sd = 0x%x,", sd
);
8608 printf (" rdst = 0x%x\n", rdst
);
8610 SYNTAX("bnot #%1, %0%S0");
8611 #line 904 "rx-decode.opc"
8612 ID(bnot
); BWL(BSIZE
); SC(bit
); DD(sd
, rdst
, BSIZE
);
8620 switch (op
[2] & 0x0f)
8637 goto op_semantics_69
;
8640 goto op_semantics_70
;
8646 switch (op
[2] & 0x0f)
8663 goto op_semantics_69
;
8666 goto op_semantics_70
;
8672 switch (op
[2] & 0x0f)
8689 goto op_semantics_69
;
8692 goto op_semantics_70
;
8698 switch (op
[2] & 0x0f)
8715 goto op_semantics_69
;
8718 goto op_semantics_70
;
8724 switch (op
[2] & 0x0f)
8741 goto op_semantics_69
;
8744 goto op_semantics_70
;
8750 switch (op
[2] & 0x0f)
8767 goto op_semantics_69
;
8770 goto op_semantics_70
;
8776 switch (op
[2] & 0x0f)
8793 goto op_semantics_69
;
8796 goto op_semantics_70
;
8802 switch (op
[2] & 0x0f)
8819 goto op_semantics_69
;
8822 goto op_semantics_70
;
8828 switch (op
[2] & 0x0f)
8845 goto op_semantics_69
;
8848 goto op_semantics_70
;
8854 switch (op
[2] & 0x0f)
8871 goto op_semantics_69
;
8874 goto op_semantics_70
;
8880 switch (op
[2] & 0x0f)
8897 goto op_semantics_69
;
8900 goto op_semantics_70
;
8906 switch (op
[2] & 0x0f)
8923 goto op_semantics_69
;
8926 goto op_semantics_70
;
8932 switch (op
[2] & 0x0f)
8949 goto op_semantics_69
;
8952 goto op_semantics_70
;
8958 switch (op
[2] & 0x0f)
8975 goto op_semantics_69
;
8978 goto op_semantics_70
;
8984 switch (op
[2] & 0x0f)
9001 goto op_semantics_69
;
9004 goto op_semantics_70
;
9010 switch (op
[2] & 0x0f)
9027 goto op_semantics_69
;
9030 goto op_semantics_70
;
9036 switch (op
[2] & 0x0f)
9053 goto op_semantics_69
;
9056 goto op_semantics_70
;
9062 switch (op
[2] & 0x0f)
9079 goto op_semantics_69
;
9082 goto op_semantics_70
;
9088 switch (op
[2] & 0x0f)
9105 goto op_semantics_69
;
9108 goto op_semantics_70
;
9114 switch (op
[2] & 0x0f)
9131 goto op_semantics_69
;
9134 goto op_semantics_70
;
9140 switch (op
[2] & 0x0f)
9157 goto op_semantics_69
;
9160 goto op_semantics_70
;
9166 switch (op
[2] & 0x0f)
9183 goto op_semantics_69
;
9186 goto op_semantics_70
;
9192 switch (op
[2] & 0x0f)
9209 goto op_semantics_69
;
9212 goto op_semantics_70
;
9218 switch (op
[2] & 0x0f)
9235 goto op_semantics_69
;
9238 goto op_semantics_70
;
9244 switch (op
[2] & 0x0f)
9261 goto op_semantics_69
;
9264 goto op_semantics_70
;
9270 switch (op
[2] & 0x0f)
9287 goto op_semantics_69
;
9290 goto op_semantics_70
;
9296 switch (op
[2] & 0x0f)
9313 goto op_semantics_69
;
9316 goto op_semantics_70
;
9322 switch (op
[2] & 0x0f)
9339 goto op_semantics_69
;
9342 goto op_semantics_70
;
9348 switch (op
[2] & 0x0f)
9365 goto op_semantics_69
;
9368 goto op_semantics_70
;
9374 switch (op
[2] & 0x0f)
9391 goto op_semantics_69
;
9394 goto op_semantics_70
;
9400 switch (op
[2] & 0x0f)
9417 goto op_semantics_69
;
9420 goto op_semantics_70
;
9424 default: UNSUPPORTED(); break;
9429 switch (op
[1] & 0xff)
9433 switch (op
[2] & 0x00)
9437 /** 1111 1101 0000 0000 srca srcb mulhi %1, %2 */
9438 #line 787 "rx-decode.opc"
9439 int srca AU
= (op
[2] >> 4) & 0x0f;
9440 #line 787 "rx-decode.opc"
9441 int srcb AU
= op
[2] & 0x0f;
9444 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9445 "/** 1111 1101 0000 0000 srca srcb mulhi %1, %2 */",
9446 op
[0], op
[1], op
[2]);
9447 printf (" srca = 0x%x,", srca
);
9448 printf (" srcb = 0x%x\n", srcb
);
9450 SYNTAX("mulhi %1, %2");
9451 #line 787 "rx-decode.opc"
9452 ID(mulhi
); SR(srca
); S2R(srcb
); F_____
;
9460 switch (op
[2] & 0x00)
9464 /** 1111 1101 0000 0001 srca srcb mullo %1, %2 */
9465 #line 790 "rx-decode.opc"
9466 int srca AU
= (op
[2] >> 4) & 0x0f;
9467 #line 790 "rx-decode.opc"
9468 int srcb AU
= op
[2] & 0x0f;
9471 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9472 "/** 1111 1101 0000 0001 srca srcb mullo %1, %2 */",
9473 op
[0], op
[1], op
[2]);
9474 printf (" srca = 0x%x,", srca
);
9475 printf (" srcb = 0x%x\n", srcb
);
9477 SYNTAX("mullo %1, %2");
9478 #line 790 "rx-decode.opc"
9479 ID(mullo
); SR(srca
); S2R(srcb
); F_____
;
9487 switch (op
[2] & 0x00)
9491 /** 1111 1101 0000 0100 srca srcb machi %1, %2 */
9492 #line 793 "rx-decode.opc"
9493 int srca AU
= (op
[2] >> 4) & 0x0f;
9494 #line 793 "rx-decode.opc"
9495 int srcb AU
= op
[2] & 0x0f;
9498 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9499 "/** 1111 1101 0000 0100 srca srcb machi %1, %2 */",
9500 op
[0], op
[1], op
[2]);
9501 printf (" srca = 0x%x,", srca
);
9502 printf (" srcb = 0x%x\n", srcb
);
9504 SYNTAX("machi %1, %2");
9505 #line 793 "rx-decode.opc"
9506 ID(machi
); SR(srca
); S2R(srcb
); F_____
;
9514 switch (op
[2] & 0x00)
9518 /** 1111 1101 0000 0101 srca srcb maclo %1, %2 */
9519 #line 796 "rx-decode.opc"
9520 int srca AU
= (op
[2] >> 4) & 0x0f;
9521 #line 796 "rx-decode.opc"
9522 int srcb AU
= op
[2] & 0x0f;
9525 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9526 "/** 1111 1101 0000 0101 srca srcb maclo %1, %2 */",
9527 op
[0], op
[1], op
[2]);
9528 printf (" srca = 0x%x,", srca
);
9529 printf (" srcb = 0x%x\n", srcb
);
9531 SYNTAX("maclo %1, %2");
9532 #line 796 "rx-decode.opc"
9533 ID(maclo
); SR(srca
); S2R(srcb
); F_____
;
9541 switch (op
[2] & 0xf0)
9545 /** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */
9546 #line 799 "rx-decode.opc"
9547 int rsrc AU
= op
[2] & 0x0f;
9550 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9551 "/** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */",
9552 op
[0], op
[1], op
[2]);
9553 printf (" rsrc = 0x%x\n", rsrc
);
9555 SYNTAX("mvtachi %1");
9556 #line 799 "rx-decode.opc"
9557 ID(mvtachi
); SR(rsrc
); F_____
;
9563 /** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */
9564 #line 802 "rx-decode.opc"
9565 int rsrc AU
= op
[2] & 0x0f;
9568 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9569 "/** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */",
9570 op
[0], op
[1], op
[2]);
9571 printf (" rsrc = 0x%x\n", rsrc
);
9573 SYNTAX("mvtaclo %1");
9574 #line 802 "rx-decode.opc"
9575 ID(mvtaclo
); SR(rsrc
); F_____
;
9579 default: UNSUPPORTED(); break;
9584 switch (op
[2] & 0xef)
9588 /** 1111 1101 0001 1000 000i 0000 racw #%1 */
9589 #line 814 "rx-decode.opc"
9590 int i AU
= (op
[2] >> 4) & 0x01;
9593 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9594 "/** 1111 1101 0001 1000 000i 0000 racw #%1 */",
9595 op
[0], op
[1], op
[2]);
9596 printf (" i = 0x%x\n", i
);
9599 #line 814 "rx-decode.opc"
9600 ID(racw
); SC(i
+1); F_____
;
9602 /*----------------------------------------------------------------------*/
9607 default: UNSUPPORTED(); break;
9612 switch (op
[2] & 0xf0)
9616 /** 1111 1101 0001 1111 0000 rdst mvfachi %0 */
9617 #line 805 "rx-decode.opc"
9618 int rdst AU
= op
[2] & 0x0f;
9621 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9622 "/** 1111 1101 0001 1111 0000 rdst mvfachi %0 */",
9623 op
[0], op
[1], op
[2]);
9624 printf (" rdst = 0x%x\n", rdst
);
9626 SYNTAX("mvfachi %0");
9627 #line 805 "rx-decode.opc"
9628 ID(mvfachi
); DR(rdst
); F_____
;
9634 /** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */
9635 #line 811 "rx-decode.opc"
9636 int rdst AU
= op
[2] & 0x0f;
9639 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9640 "/** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */",
9641 op
[0], op
[1], op
[2]);
9642 printf (" rdst = 0x%x\n", rdst
);
9644 SYNTAX("mvfaclo %0");
9645 #line 811 "rx-decode.opc"
9646 ID(mvfaclo
); DR(rdst
); F_____
;
9652 /** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */
9653 #line 808 "rx-decode.opc"
9654 int rdst AU
= op
[2] & 0x0f;
9657 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9658 "/** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */",
9659 op
[0], op
[1], op
[2]);
9660 printf (" rdst = 0x%x\n", rdst
);
9662 SYNTAX("mvfacmi %0");
9663 #line 808 "rx-decode.opc"
9664 ID(mvfacmi
); DR(rdst
); F_____
;
9668 default: UNSUPPORTED(); break;
9673 switch (op
[2] & 0x00)
9678 /** 1111 1101 0010 0p sz rdst rsrc mov%s %1, %0 */
9679 #line 321 "rx-decode.opc"
9680 int p AU
= (op
[1] >> 2) & 0x01;
9681 #line 321 "rx-decode.opc"
9682 int sz AU
= op
[1] & 0x03;
9683 #line 321 "rx-decode.opc"
9684 int rdst AU
= (op
[2] >> 4) & 0x0f;
9685 #line 321 "rx-decode.opc"
9686 int rsrc AU
= op
[2] & 0x0f;
9689 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9690 "/** 1111 1101 0010 0p sz rdst rsrc mov%s %1, %0 */",
9691 op
[0], op
[1], op
[2]);
9692 printf (" p = 0x%x,", p
);
9693 printf (" sz = 0x%x,", sz
);
9694 printf (" rdst = 0x%x,", rdst
);
9695 printf (" rsrc = 0x%x\n", rsrc
);
9697 SYNTAX("mov%s %1, %0");
9698 #line 321 "rx-decode.opc"
9699 ID(mov
); sBWL (sz
); SR(rsrc
); F_____
;
9700 OP(0, p
? RX_Operand_Predec
: RX_Operand_Postinc
, rdst
, 0);
9708 switch (op
[2] & 0x00)
9711 goto op_semantics_71
;
9717 switch (op
[2] & 0x00)
9720 goto op_semantics_71
;
9726 switch (op
[2] & 0x00)
9729 goto op_semantics_71
;
9735 switch (op
[2] & 0x00)
9738 goto op_semantics_71
;
9744 switch (op
[2] & 0x00)
9747 goto op_semantics_71
;
9753 switch (op
[2] & 0x00)
9758 /** 1111 1101 0010 1p sz rsrc rdst mov%s %1, %0 */
9759 #line 325 "rx-decode.opc"
9760 int p AU
= (op
[1] >> 2) & 0x01;
9761 #line 325 "rx-decode.opc"
9762 int sz AU
= op
[1] & 0x03;
9763 #line 325 "rx-decode.opc"
9764 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9765 #line 325 "rx-decode.opc"
9766 int rdst AU
= op
[2] & 0x0f;
9769 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9770 "/** 1111 1101 0010 1p sz rsrc rdst mov%s %1, %0 */",
9771 op
[0], op
[1], op
[2]);
9772 printf (" p = 0x%x,", p
);
9773 printf (" sz = 0x%x,", sz
);
9774 printf (" rsrc = 0x%x,", rsrc
);
9775 printf (" rdst = 0x%x\n", rdst
);
9777 SYNTAX("mov%s %1, %0");
9778 #line 325 "rx-decode.opc"
9779 ID(mov
); sBWL (sz
); DR(rdst
); F_____
;
9780 OP(1, p
? RX_Operand_Predec
: RX_Operand_Postinc
, rsrc
, 0);
9788 switch (op
[2] & 0x00)
9791 goto op_semantics_72
;
9797 switch (op
[2] & 0x00)
9800 goto op_semantics_72
;
9806 switch (op
[2] & 0x00)
9809 goto op_semantics_72
;
9815 switch (op
[2] & 0x00)
9818 goto op_semantics_72
;
9824 switch (op
[2] & 0x00)
9827 goto op_semantics_72
;
9833 switch (op
[2] & 0x00)
9838 /** 1111 1101 0011 1p sz rsrc rdst movu%s %1, %0 */
9839 #line 335 "rx-decode.opc"
9840 int p AU
= (op
[1] >> 2) & 0x01;
9841 #line 335 "rx-decode.opc"
9842 int sz AU
= op
[1] & 0x03;
9843 #line 335 "rx-decode.opc"
9844 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9845 #line 335 "rx-decode.opc"
9846 int rdst AU
= op
[2] & 0x0f;
9849 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9850 "/** 1111 1101 0011 1p sz rsrc rdst movu%s %1, %0 */",
9851 op
[0], op
[1], op
[2]);
9852 printf (" p = 0x%x,", p
);
9853 printf (" sz = 0x%x,", sz
);
9854 printf (" rsrc = 0x%x,", rsrc
);
9855 printf (" rdst = 0x%x\n", rdst
);
9857 SYNTAX("movu%s %1, %0");
9858 #line 335 "rx-decode.opc"
9859 ID(mov
); uBWL (sz
); DR(rdst
); F_____
;
9860 OP(1, p
? RX_Operand_Predec
: RX_Operand_Postinc
, rsrc
, 0);
9862 /*----------------------------------------------------------------------*/
9871 switch (op
[2] & 0x00)
9874 goto op_semantics_73
;
9880 switch (op
[2] & 0x00)
9883 goto op_semantics_73
;
9889 switch (op
[2] & 0x00)
9892 goto op_semantics_73
;
9898 switch (op
[2] & 0x00)
9901 goto op_semantics_73
;
9907 switch (op
[2] & 0x00)
9910 goto op_semantics_73
;
9916 switch (op
[2] & 0x00)
9920 /** 1111 1101 0110 0000 rsrc rdst shlr %2, %0 */
9921 #line 668 "rx-decode.opc"
9922 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9923 #line 668 "rx-decode.opc"
9924 int rdst AU
= op
[2] & 0x0f;
9927 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9928 "/** 1111 1101 0110 0000 rsrc rdst shlr %2, %0 */",
9929 op
[0], op
[1], op
[2]);
9930 printf (" rsrc = 0x%x,", rsrc
);
9931 printf (" rdst = 0x%x\n", rdst
);
9933 SYNTAX("shlr %2, %0");
9934 #line 668 "rx-decode.opc"
9935 ID(shlr
); S2R(rsrc
); SR(rdst
); DR(rdst
); F__SZC
;
9943 switch (op
[2] & 0x00)
9947 /** 1111 1101 0110 0001 rsrc rdst shar %2, %0 */
9948 #line 658 "rx-decode.opc"
9949 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9950 #line 658 "rx-decode.opc"
9951 int rdst AU
= op
[2] & 0x0f;
9954 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9955 "/** 1111 1101 0110 0001 rsrc rdst shar %2, %0 */",
9956 op
[0], op
[1], op
[2]);
9957 printf (" rsrc = 0x%x,", rsrc
);
9958 printf (" rdst = 0x%x\n", rdst
);
9960 SYNTAX("shar %2, %0");
9961 #line 658 "rx-decode.opc"
9962 ID(shar
); S2R(rsrc
); SR(rdst
); DR(rdst
); F_0SZC
;
9970 switch (op
[2] & 0x00)
9974 /** 1111 1101 0110 0010 rsrc rdst shll %2, %0 */
9975 #line 648 "rx-decode.opc"
9976 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9977 #line 648 "rx-decode.opc"
9978 int rdst AU
= op
[2] & 0x0f;
9981 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9982 "/** 1111 1101 0110 0010 rsrc rdst shll %2, %0 */",
9983 op
[0], op
[1], op
[2]);
9984 printf (" rsrc = 0x%x,", rsrc
);
9985 printf (" rdst = 0x%x\n", rdst
);
9987 SYNTAX("shll %2, %0");
9988 #line 648 "rx-decode.opc"
9989 ID(shll
); S2R(rsrc
); SR(rdst
); DR(rdst
); F_OSZC
;
9997 switch (op
[2] & 0x00)
10001 /** 1111 1101 0110 0100 rsrc rdst rotr %1, %0 */
10002 #line 692 "rx-decode.opc"
10003 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10004 #line 692 "rx-decode.opc"
10005 int rdst AU
= op
[2] & 0x0f;
10008 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10009 "/** 1111 1101 0110 0100 rsrc rdst rotr %1, %0 */",
10010 op
[0], op
[1], op
[2]);
10011 printf (" rsrc = 0x%x,", rsrc
);
10012 printf (" rdst = 0x%x\n", rdst
);
10014 SYNTAX("rotr %1, %0");
10015 #line 692 "rx-decode.opc"
10016 ID(rotr
); SR(rsrc
); DR(rdst
); F__SZC
;
10024 switch (op
[2] & 0x00)
10028 /** 1111 1101 0110 0101 rsrc rdst revw %1, %0 */
10029 #line 695 "rx-decode.opc"
10030 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10031 #line 695 "rx-decode.opc"
10032 int rdst AU
= op
[2] & 0x0f;
10035 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10036 "/** 1111 1101 0110 0101 rsrc rdst revw %1, %0 */",
10037 op
[0], op
[1], op
[2]);
10038 printf (" rsrc = 0x%x,", rsrc
);
10039 printf (" rdst = 0x%x\n", rdst
);
10041 SYNTAX("revw %1, %0");
10042 #line 695 "rx-decode.opc"
10043 ID(revw
); SR(rsrc
); DR(rdst
);
10051 switch (op
[2] & 0x00)
10055 /** 1111 1101 0110 0110 rsrc rdst rotl %1, %0 */
10056 #line 686 "rx-decode.opc"
10057 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10058 #line 686 "rx-decode.opc"
10059 int rdst AU
= op
[2] & 0x0f;
10062 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10063 "/** 1111 1101 0110 0110 rsrc rdst rotl %1, %0 */",
10064 op
[0], op
[1], op
[2]);
10065 printf (" rsrc = 0x%x,", rsrc
);
10066 printf (" rdst = 0x%x\n", rdst
);
10068 SYNTAX("rotl %1, %0");
10069 #line 686 "rx-decode.opc"
10070 ID(rotl
); SR(rsrc
); DR(rdst
); F__SZC
;
10078 switch (op
[2] & 0x00)
10082 /** 1111 1101 0110 0111 rsrc rdst revl %1, %0 */
10083 #line 698 "rx-decode.opc"
10084 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10085 #line 698 "rx-decode.opc"
10086 int rdst AU
= op
[2] & 0x0f;
10089 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10090 "/** 1111 1101 0110 0111 rsrc rdst revl %1, %0 */",
10091 op
[0], op
[1], op
[2]);
10092 printf (" rsrc = 0x%x,", rsrc
);
10093 printf (" rdst = 0x%x\n", rdst
);
10095 SYNTAX("revl %1, %0");
10096 #line 698 "rx-decode.opc"
10097 ID(revl
); SR(rsrc
); DR(rdst
);
10099 /*----------------------------------------------------------------------*/
10108 switch (op
[2] & 0x00)
10113 /** 1111 1101 0110 100c rsrc rdst mvtc %1, %0 */
10114 #line 941 "rx-decode.opc"
10115 int c AU
= op
[1] & 0x01;
10116 #line 941 "rx-decode.opc"
10117 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10118 #line 941 "rx-decode.opc"
10119 int rdst AU
= op
[2] & 0x0f;
10122 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10123 "/** 1111 1101 0110 100c rsrc rdst mvtc %1, %0 */",
10124 op
[0], op
[1], op
[2]);
10125 printf (" c = 0x%x,", c
);
10126 printf (" rsrc = 0x%x,", rsrc
);
10127 printf (" rdst = 0x%x\n", rdst
);
10129 SYNTAX("mvtc %1, %0");
10130 #line 941 "rx-decode.opc"
10131 ID(mov
); SR(rsrc
); DR(c
*16+rdst
+ 16);
10139 switch (op
[2] & 0x00)
10142 goto op_semantics_74
;
10148 switch (op
[2] & 0x00)
10153 /** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */
10154 #line 944 "rx-decode.opc"
10155 int s AU
= op
[1] & 0x01;
10156 #line 944 "rx-decode.opc"
10157 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10158 #line 944 "rx-decode.opc"
10159 int rdst AU
= op
[2] & 0x0f;
10162 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10163 "/** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */",
10164 op
[0], op
[1], op
[2]);
10165 printf (" s = 0x%x,", s
);
10166 printf (" rsrc = 0x%x,", rsrc
);
10167 printf (" rdst = 0x%x\n", rdst
);
10169 SYNTAX("mvfc %1, %0");
10170 #line 944 "rx-decode.opc"
10171 ID(mov
); SR((s
*16+rsrc
) + 16); DR(rdst
);
10173 /*----------------------------------------------------------------------*/
10182 switch (op
[2] & 0x00)
10185 goto op_semantics_75
;
10191 switch (op
[2] & 0x00)
10196 /** 1111 1101 0110 110i mmmm rdst rotr #%1, %0 */
10197 #line 689 "rx-decode.opc"
10198 int i AU
= op
[1] & 0x01;
10199 #line 689 "rx-decode.opc"
10200 int mmmm AU
= (op
[2] >> 4) & 0x0f;
10201 #line 689 "rx-decode.opc"
10202 int rdst AU
= op
[2] & 0x0f;
10205 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10206 "/** 1111 1101 0110 110i mmmm rdst rotr #%1, %0 */",
10207 op
[0], op
[1], op
[2]);
10208 printf (" i = 0x%x,", i
);
10209 printf (" mmmm = 0x%x,", mmmm
);
10210 printf (" rdst = 0x%x\n", rdst
);
10212 SYNTAX("rotr #%1, %0");
10213 #line 689 "rx-decode.opc"
10214 ID(rotr
); SC(i
*16+mmmm
); DR(rdst
); F__SZC
;
10222 switch (op
[2] & 0x00)
10225 goto op_semantics_76
;
10231 switch (op
[2] & 0x00)
10236 /** 1111 1101 0110 111i mmmm rdst rotl #%1, %0 */
10237 #line 683 "rx-decode.opc"
10238 int i AU
= op
[1] & 0x01;
10239 #line 683 "rx-decode.opc"
10240 int mmmm AU
= (op
[2] >> 4) & 0x0f;
10241 #line 683 "rx-decode.opc"
10242 int rdst AU
= op
[2] & 0x0f;
10245 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10246 "/** 1111 1101 0110 111i mmmm rdst rotl #%1, %0 */",
10247 op
[0], op
[1], op
[2]);
10248 printf (" i = 0x%x,", i
);
10249 printf (" mmmm = 0x%x,", mmmm
);
10250 printf (" rdst = 0x%x\n", rdst
);
10252 SYNTAX("rotl #%1, %0");
10253 #line 683 "rx-decode.opc"
10254 ID(rotl
); SC(i
*16+mmmm
); DR(rdst
); F__SZC
;
10262 switch (op
[2] & 0x00)
10265 goto op_semantics_77
;
10271 switch (op
[2] & 0xf0)
10276 /** 1111 1101 0111 im00 0010rdst adc #%1, %0 */
10277 #line 465 "rx-decode.opc"
10278 int im AU
= (op
[1] >> 2) & 0x03;
10279 #line 465 "rx-decode.opc"
10280 int rdst AU
= op
[2] & 0x0f;
10283 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10284 "/** 1111 1101 0111 im00 0010rdst adc #%1, %0 */",
10285 op
[0], op
[1], op
[2]);
10286 printf (" im = 0x%x,", im
);
10287 printf (" rdst = 0x%x\n", rdst
);
10289 SYNTAX("adc #%1, %0");
10290 #line 465 "rx-decode.opc"
10291 ID(adc
); SC(IMMex(im
)); DR(rdst
); F_OSZC
;
10298 /** 1111 1101 0111 im00 0100rdst max #%1, %0 */
10299 #line 547 "rx-decode.opc"
10300 int im AU
= (op
[1] >> 2) & 0x03;
10301 #line 547 "rx-decode.opc"
10302 int rdst AU
= op
[2] & 0x0f;
10305 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10306 "/** 1111 1101 0111 im00 0100rdst max #%1, %0 */",
10307 op
[0], op
[1], op
[2]);
10308 printf (" im = 0x%x,", im
);
10309 printf (" rdst = 0x%x\n", rdst
);
10311 SYNTAX("max #%1, %0");
10312 #line 547 "rx-decode.opc"
10313 ID(max
); DR(rdst
); SC(IMMex(im
));
10320 /** 1111 1101 0111 im00 0101rdst min #%1, %0 */
10321 #line 567 "rx-decode.opc"
10322 int im AU
= (op
[1] >> 2) & 0x03;
10323 #line 567 "rx-decode.opc"
10324 int rdst AU
= op
[2] & 0x0f;
10327 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10328 "/** 1111 1101 0111 im00 0101rdst min #%1, %0 */",
10329 op
[0], op
[1], op
[2]);
10330 printf (" im = 0x%x,", im
);
10331 printf (" rdst = 0x%x\n", rdst
);
10333 SYNTAX("min #%1, %0");
10334 #line 567 "rx-decode.opc"
10335 ID(min
); DR(rdst
); SC(IMMex(im
));
10342 /** 1111 1101 0111 im00 0110rdst emul #%1, %0 */
10343 #line 597 "rx-decode.opc"
10344 int im AU
= (op
[1] >> 2) & 0x03;
10345 #line 597 "rx-decode.opc"
10346 int rdst AU
= op
[2] & 0x0f;
10349 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10350 "/** 1111 1101 0111 im00 0110rdst emul #%1, %0 */",
10351 op
[0], op
[1], op
[2]);
10352 printf (" im = 0x%x,", im
);
10353 printf (" rdst = 0x%x\n", rdst
);
10355 SYNTAX("emul #%1, %0");
10356 #line 597 "rx-decode.opc"
10357 ID(emul
); DR(rdst
); SC(IMMex(im
));
10364 /** 1111 1101 0111 im00 0111rdst emulu #%1, %0 */
10365 #line 609 "rx-decode.opc"
10366 int im AU
= (op
[1] >> 2) & 0x03;
10367 #line 609 "rx-decode.opc"
10368 int rdst AU
= op
[2] & 0x0f;
10371 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10372 "/** 1111 1101 0111 im00 0111rdst emulu #%1, %0 */",
10373 op
[0], op
[1], op
[2]);
10374 printf (" im = 0x%x,", im
);
10375 printf (" rdst = 0x%x\n", rdst
);
10377 SYNTAX("emulu #%1, %0");
10378 #line 609 "rx-decode.opc"
10379 ID(emulu
); DR(rdst
); SC(IMMex(im
));
10386 /** 1111 1101 0111 im00 1000rdst div #%1, %0 */
10387 #line 621 "rx-decode.opc"
10388 int im AU
= (op
[1] >> 2) & 0x03;
10389 #line 621 "rx-decode.opc"
10390 int rdst AU
= op
[2] & 0x0f;
10393 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10394 "/** 1111 1101 0111 im00 1000rdst div #%1, %0 */",
10395 op
[0], op
[1], op
[2]);
10396 printf (" im = 0x%x,", im
);
10397 printf (" rdst = 0x%x\n", rdst
);
10399 SYNTAX("div #%1, %0");
10400 #line 621 "rx-decode.opc"
10401 ID(div
); DR(rdst
); SC(IMMex(im
)); F_O___
;
10408 /** 1111 1101 0111 im00 1001rdst divu #%1, %0 */
10409 #line 633 "rx-decode.opc"
10410 int im AU
= (op
[1] >> 2) & 0x03;
10411 #line 633 "rx-decode.opc"
10412 int rdst AU
= op
[2] & 0x0f;
10415 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10416 "/** 1111 1101 0111 im00 1001rdst divu #%1, %0 */",
10417 op
[0], op
[1], op
[2]);
10418 printf (" im = 0x%x,", im
);
10419 printf (" rdst = 0x%x\n", rdst
);
10421 SYNTAX("divu #%1, %0");
10422 #line 633 "rx-decode.opc"
10423 ID(divu
); DR(rdst
); SC(IMMex(im
)); F_O___
;
10430 /** 1111 1101 0111 im00 1100rdst tst #%1, %2 */
10431 #line 444 "rx-decode.opc"
10432 int im AU
= (op
[1] >> 2) & 0x03;
10433 #line 444 "rx-decode.opc"
10434 int rdst AU
= op
[2] & 0x0f;
10437 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10438 "/** 1111 1101 0111 im00 1100rdst tst #%1, %2 */",
10439 op
[0], op
[1], op
[2]);
10440 printf (" im = 0x%x,", im
);
10441 printf (" rdst = 0x%x\n", rdst
);
10443 SYNTAX("tst #%1, %2");
10444 #line 444 "rx-decode.opc"
10445 ID(and); SC(IMMex(im
)); S2R(rdst
); F__SZ_
;
10452 /** 1111 1101 0111 im00 1101rdst xor #%1, %0 */
10453 #line 423 "rx-decode.opc"
10454 int im AU
= (op
[1] >> 2) & 0x03;
10455 #line 423 "rx-decode.opc"
10456 int rdst AU
= op
[2] & 0x0f;
10459 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10460 "/** 1111 1101 0111 im00 1101rdst xor #%1, %0 */",
10461 op
[0], op
[1], op
[2]);
10462 printf (" im = 0x%x,", im
);
10463 printf (" rdst = 0x%x\n", rdst
);
10465 SYNTAX("xor #%1, %0");
10466 #line 423 "rx-decode.opc"
10467 ID(xor); SC(IMMex(im
)); DR(rdst
); F__SZ_
;
10474 /** 1111 1101 0111 im00 1110rdst stz #%1, %0 */
10475 #line 369 "rx-decode.opc"
10476 int im AU
= (op
[1] >> 2) & 0x03;
10477 #line 369 "rx-decode.opc"
10478 int rdst AU
= op
[2] & 0x0f;
10481 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10482 "/** 1111 1101 0111 im00 1110rdst stz #%1, %0 */",
10483 op
[0], op
[1], op
[2]);
10484 printf (" im = 0x%x,", im
);
10485 printf (" rdst = 0x%x\n", rdst
);
10487 SYNTAX("stz #%1, %0");
10488 #line 369 "rx-decode.opc"
10489 ID(stcc
); SC(IMMex(im
)); DR(rdst
); S2cc(RXC_z
);
10496 /** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */
10497 #line 372 "rx-decode.opc"
10498 int im AU
= (op
[1] >> 2) & 0x03;
10499 #line 372 "rx-decode.opc"
10500 int rdst AU
= op
[2] & 0x0f;
10503 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10504 "/** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */",
10505 op
[0], op
[1], op
[2]);
10506 printf (" im = 0x%x,", im
);
10507 printf (" rdst = 0x%x\n", rdst
);
10509 SYNTAX("stnz #%1, %0");
10510 #line 372 "rx-decode.opc"
10511 ID(stcc
); SC(IMMex(im
)); DR(rdst
); S2cc(RXC_nz
);
10513 /*----------------------------------------------------------------------*/
10518 default: UNSUPPORTED(); break;
10523 switch (op
[2] & 0xf0)
10527 /** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */
10528 #line 841 "rx-decode.opc"
10529 int rdst AU
= op
[2] & 0x0f;
10532 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10533 "/** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */",
10534 op
[0], op
[1], op
[2]);
10535 printf (" rdst = 0x%x\n", rdst
);
10537 SYNTAX("fsub #%1, %0");
10538 #line 841 "rx-decode.opc"
10539 ID(fsub
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10545 /** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */
10546 #line 835 "rx-decode.opc"
10547 int rdst AU
= op
[2] & 0x0f;
10550 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10551 "/** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */",
10552 op
[0], op
[1], op
[2]);
10553 printf (" rdst = 0x%x\n", rdst
);
10555 SYNTAX("fcmp #%1, %0");
10556 #line 835 "rx-decode.opc"
10557 ID(fcmp
); DR(rdst
); SC(IMM(0)); F_OSZ_
;
10563 /** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */
10564 #line 829 "rx-decode.opc"
10565 int rdst AU
= op
[2] & 0x0f;
10568 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10569 "/** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */",
10570 op
[0], op
[1], op
[2]);
10571 printf (" rdst = 0x%x\n", rdst
);
10573 SYNTAX("fadd #%1, %0");
10574 #line 829 "rx-decode.opc"
10575 ID(fadd
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10581 /** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */
10582 #line 850 "rx-decode.opc"
10583 int rdst AU
= op
[2] & 0x0f;
10586 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10587 "/** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */",
10588 op
[0], op
[1], op
[2]);
10589 printf (" rdst = 0x%x\n", rdst
);
10591 SYNTAX("fmul #%1, %0");
10592 #line 850 "rx-decode.opc"
10593 ID(fmul
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10599 /** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */
10600 #line 856 "rx-decode.opc"
10601 int rdst AU
= op
[2] & 0x0f;
10604 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10605 "/** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */",
10606 op
[0], op
[1], op
[2]);
10607 printf (" rdst = 0x%x\n", rdst
);
10609 SYNTAX("fdiv #%1, %0");
10610 #line 856 "rx-decode.opc"
10611 ID(fdiv
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10615 default: UNSUPPORTED(); break;
10620 switch (op
[2] & 0xe0)
10625 /** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */
10626 #line 938 "rx-decode.opc"
10627 int im AU
= (op
[1] >> 2) & 0x03;
10628 #line 938 "rx-decode.opc"
10629 int crdst AU
= op
[2] & 0x1f;
10632 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10633 "/** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */",
10634 op
[0], op
[1], op
[2]);
10635 printf (" im = 0x%x,", im
);
10636 printf (" crdst = 0x%x\n", crdst
);
10638 SYNTAX("mvtc #%1, %0");
10639 #line 938 "rx-decode.opc"
10640 ID(mov
); SC(IMMex(im
)); DR(crdst
+ 16);
10644 default: UNSUPPORTED(); break;
10649 switch (op
[2] & 0xf0)
10652 goto op_semantics_78
;
10655 goto op_semantics_79
;
10658 goto op_semantics_80
;
10661 goto op_semantics_81
;
10664 goto op_semantics_82
;
10667 goto op_semantics_83
;
10670 goto op_semantics_84
;
10673 goto op_semantics_85
;
10676 goto op_semantics_86
;
10679 goto op_semantics_87
;
10682 goto op_semantics_88
;
10684 default: UNSUPPORTED(); break;
10689 switch (op
[2] & 0xe0)
10692 goto op_semantics_89
;
10694 default: UNSUPPORTED(); break;
10699 switch (op
[2] & 0xf0)
10702 goto op_semantics_78
;
10705 goto op_semantics_79
;
10708 goto op_semantics_80
;
10711 goto op_semantics_81
;
10714 goto op_semantics_82
;
10717 goto op_semantics_83
;
10720 goto op_semantics_84
;
10723 goto op_semantics_85
;
10726 goto op_semantics_86
;
10729 goto op_semantics_87
;
10732 goto op_semantics_88
;
10734 default: UNSUPPORTED(); break;
10739 switch (op
[2] & 0xe0)
10742 goto op_semantics_89
;
10744 default: UNSUPPORTED(); break;
10749 switch (op
[2] & 0xf0)
10752 goto op_semantics_78
;
10755 goto op_semantics_79
;
10758 goto op_semantics_80
;
10761 goto op_semantics_81
;
10764 goto op_semantics_82
;
10767 goto op_semantics_83
;
10770 goto op_semantics_84
;
10773 goto op_semantics_85
;
10776 goto op_semantics_86
;
10779 goto op_semantics_87
;
10782 goto op_semantics_88
;
10784 default: UNSUPPORTED(); break;
10789 switch (op
[2] & 0xe0)
10792 goto op_semantics_89
;
10794 default: UNSUPPORTED(); break;
10799 switch (op
[2] & 0x00)
10804 /** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */
10805 #line 671 "rx-decode.opc"
10806 int immmm AU
= op
[1] & 0x1f;
10807 #line 671 "rx-decode.opc"
10808 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10809 #line 671 "rx-decode.opc"
10810 int rdst AU
= op
[2] & 0x0f;
10813 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10814 "/** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */",
10815 op
[0], op
[1], op
[2]);
10816 printf (" immmm = 0x%x,", immmm
);
10817 printf (" rsrc = 0x%x,", rsrc
);
10818 printf (" rdst = 0x%x\n", rdst
);
10820 SYNTAX("shlr #%2, %1, %0");
10821 #line 671 "rx-decode.opc"
10822 ID(shlr
); S2C(immmm
); SR(rsrc
); DR(rdst
); F__SZC
;
10824 /*----------------------------------------------------------------------*/
10833 switch (op
[2] & 0x00)
10836 goto op_semantics_90
;
10842 switch (op
[2] & 0x00)
10845 goto op_semantics_90
;
10851 switch (op
[2] & 0x00)
10854 goto op_semantics_90
;
10860 switch (op
[2] & 0x00)
10863 goto op_semantics_90
;
10869 switch (op
[2] & 0x00)
10872 goto op_semantics_90
;
10878 switch (op
[2] & 0x00)
10881 goto op_semantics_90
;
10887 switch (op
[2] & 0x00)
10890 goto op_semantics_90
;
10896 switch (op
[2] & 0x00)
10899 goto op_semantics_90
;
10905 switch (op
[2] & 0x00)
10908 goto op_semantics_90
;
10914 switch (op
[2] & 0x00)
10917 goto op_semantics_90
;
10923 switch (op
[2] & 0x00)
10926 goto op_semantics_90
;
10932 switch (op
[2] & 0x00)
10935 goto op_semantics_90
;
10941 switch (op
[2] & 0x00)
10944 goto op_semantics_90
;
10950 switch (op
[2] & 0x00)
10953 goto op_semantics_90
;
10959 switch (op
[2] & 0x00)
10962 goto op_semantics_90
;
10968 switch (op
[2] & 0x00)
10971 goto op_semantics_90
;
10977 switch (op
[2] & 0x00)
10980 goto op_semantics_90
;
10986 switch (op
[2] & 0x00)
10989 goto op_semantics_90
;
10995 switch (op
[2] & 0x00)
10998 goto op_semantics_90
;
11004 switch (op
[2] & 0x00)
11007 goto op_semantics_90
;
11013 switch (op
[2] & 0x00)
11016 goto op_semantics_90
;
11022 switch (op
[2] & 0x00)
11025 goto op_semantics_90
;
11031 switch (op
[2] & 0x00)
11034 goto op_semantics_90
;
11040 switch (op
[2] & 0x00)
11043 goto op_semantics_90
;
11049 switch (op
[2] & 0x00)
11052 goto op_semantics_90
;
11058 switch (op
[2] & 0x00)
11061 goto op_semantics_90
;
11067 switch (op
[2] & 0x00)
11070 goto op_semantics_90
;
11076 switch (op
[2] & 0x00)
11079 goto op_semantics_90
;
11085 switch (op
[2] & 0x00)
11088 goto op_semantics_90
;
11094 switch (op
[2] & 0x00)
11097 goto op_semantics_90
;
11103 switch (op
[2] & 0x00)
11106 goto op_semantics_90
;
11112 switch (op
[2] & 0x00)
11117 /** 1111 1101 101immmm rsrc rdst shar #%2, %1, %0 */
11118 #line 661 "rx-decode.opc"
11119 int immmm AU
= op
[1] & 0x1f;
11120 #line 661 "rx-decode.opc"
11121 int rsrc AU
= (op
[2] >> 4) & 0x0f;
11122 #line 661 "rx-decode.opc"
11123 int rdst AU
= op
[2] & 0x0f;
11126 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11127 "/** 1111 1101 101immmm rsrc rdst shar #%2, %1, %0 */",
11128 op
[0], op
[1], op
[2]);
11129 printf (" immmm = 0x%x,", immmm
);
11130 printf (" rsrc = 0x%x,", rsrc
);
11131 printf (" rdst = 0x%x\n", rdst
);
11133 SYNTAX("shar #%2, %1, %0");
11134 #line 661 "rx-decode.opc"
11135 ID(shar
); S2C(immmm
); SR(rsrc
); DR(rdst
); F_0SZC
;
11144 switch (op
[2] & 0x00)
11147 goto op_semantics_91
;
11153 switch (op
[2] & 0x00)
11156 goto op_semantics_91
;
11162 switch (op
[2] & 0x00)
11165 goto op_semantics_91
;
11171 switch (op
[2] & 0x00)
11174 goto op_semantics_91
;
11180 switch (op
[2] & 0x00)
11183 goto op_semantics_91
;
11189 switch (op
[2] & 0x00)
11192 goto op_semantics_91
;
11198 switch (op
[2] & 0x00)
11201 goto op_semantics_91
;
11207 switch (op
[2] & 0x00)
11210 goto op_semantics_91
;
11216 switch (op
[2] & 0x00)
11219 goto op_semantics_91
;
11225 switch (op
[2] & 0x00)
11228 goto op_semantics_91
;
11234 switch (op
[2] & 0x00)
11237 goto op_semantics_91
;
11243 switch (op
[2] & 0x00)
11246 goto op_semantics_91
;
11252 switch (op
[2] & 0x00)
11255 goto op_semantics_91
;
11261 switch (op
[2] & 0x00)
11264 goto op_semantics_91
;
11270 switch (op
[2] & 0x00)
11273 goto op_semantics_91
;
11279 switch (op
[2] & 0x00)
11282 goto op_semantics_91
;
11288 switch (op
[2] & 0x00)
11291 goto op_semantics_91
;
11297 switch (op
[2] & 0x00)
11300 goto op_semantics_91
;
11306 switch (op
[2] & 0x00)
11309 goto op_semantics_91
;
11315 switch (op
[2] & 0x00)
11318 goto op_semantics_91
;
11324 switch (op
[2] & 0x00)
11327 goto op_semantics_91
;
11333 switch (op
[2] & 0x00)
11336 goto op_semantics_91
;
11342 switch (op
[2] & 0x00)
11345 goto op_semantics_91
;
11351 switch (op
[2] & 0x00)
11354 goto op_semantics_91
;
11360 switch (op
[2] & 0x00)
11363 goto op_semantics_91
;
11369 switch (op
[2] & 0x00)
11372 goto op_semantics_91
;
11378 switch (op
[2] & 0x00)
11381 goto op_semantics_91
;
11387 switch (op
[2] & 0x00)
11390 goto op_semantics_91
;
11396 switch (op
[2] & 0x00)
11399 goto op_semantics_91
;
11405 switch (op
[2] & 0x00)
11408 goto op_semantics_91
;
11414 switch (op
[2] & 0x00)
11417 goto op_semantics_91
;
11423 switch (op
[2] & 0x00)
11428 /** 1111 1101 110immmm rsrc rdst shll #%2, %1, %0 */
11429 #line 651 "rx-decode.opc"
11430 int immmm AU
= op
[1] & 0x1f;
11431 #line 651 "rx-decode.opc"
11432 int rsrc AU
= (op
[2] >> 4) & 0x0f;
11433 #line 651 "rx-decode.opc"
11434 int rdst AU
= op
[2] & 0x0f;
11437 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11438 "/** 1111 1101 110immmm rsrc rdst shll #%2, %1, %0 */",
11439 op
[0], op
[1], op
[2]);
11440 printf (" immmm = 0x%x,", immmm
);
11441 printf (" rsrc = 0x%x,", rsrc
);
11442 printf (" rdst = 0x%x\n", rdst
);
11444 SYNTAX("shll #%2, %1, %0");
11445 #line 651 "rx-decode.opc"
11446 ID(shll
); S2C(immmm
); SR(rsrc
); DR(rdst
); F_OSZC
;
11455 switch (op
[2] & 0x00)
11458 goto op_semantics_92
;
11464 switch (op
[2] & 0x00)
11467 goto op_semantics_92
;
11473 switch (op
[2] & 0x00)
11476 goto op_semantics_92
;
11482 switch (op
[2] & 0x00)
11485 goto op_semantics_92
;
11491 switch (op
[2] & 0x00)
11494 goto op_semantics_92
;
11500 switch (op
[2] & 0x00)
11503 goto op_semantics_92
;
11509 switch (op
[2] & 0x00)
11512 goto op_semantics_92
;
11518 switch (op
[2] & 0x00)
11521 goto op_semantics_92
;
11527 switch (op
[2] & 0x00)
11530 goto op_semantics_92
;
11536 switch (op
[2] & 0x00)
11539 goto op_semantics_92
;
11545 switch (op
[2] & 0x00)
11548 goto op_semantics_92
;
11554 switch (op
[2] & 0x00)
11557 goto op_semantics_92
;
11563 switch (op
[2] & 0x00)
11566 goto op_semantics_92
;
11572 switch (op
[2] & 0x00)
11575 goto op_semantics_92
;
11581 switch (op
[2] & 0x00)
11584 goto op_semantics_92
;
11590 switch (op
[2] & 0x00)
11593 goto op_semantics_92
;
11599 switch (op
[2] & 0x00)
11602 goto op_semantics_92
;
11608 switch (op
[2] & 0x00)
11611 goto op_semantics_92
;
11617 switch (op
[2] & 0x00)
11620 goto op_semantics_92
;
11626 switch (op
[2] & 0x00)
11629 goto op_semantics_92
;
11635 switch (op
[2] & 0x00)
11638 goto op_semantics_92
;
11644 switch (op
[2] & 0x00)
11647 goto op_semantics_92
;
11653 switch (op
[2] & 0x00)
11656 goto op_semantics_92
;
11662 switch (op
[2] & 0x00)
11665 goto op_semantics_92
;
11671 switch (op
[2] & 0x00)
11674 goto op_semantics_92
;
11680 switch (op
[2] & 0x00)
11683 goto op_semantics_92
;
11689 switch (op
[2] & 0x00)
11692 goto op_semantics_92
;
11698 switch (op
[2] & 0x00)
11701 goto op_semantics_92
;
11707 switch (op
[2] & 0x00)
11710 goto op_semantics_92
;
11716 switch (op
[2] & 0x00)
11719 goto op_semantics_92
;
11725 switch (op
[2] & 0x00)
11728 goto op_semantics_92
;
11734 switch (op
[2] & 0xf0)
11753 /** 1111 1101 111 bittt cond rdst bm%2 #%1, %0%S0 */
11754 #line 917 "rx-decode.opc"
11755 int bittt AU
= op
[1] & 0x1f;
11756 #line 917 "rx-decode.opc"
11757 int cond AU
= (op
[2] >> 4) & 0x0f;
11758 #line 917 "rx-decode.opc"
11759 int rdst AU
= op
[2] & 0x0f;
11762 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11763 "/** 1111 1101 111 bittt cond rdst bm%2 #%1, %0%S0 */",
11764 op
[0], op
[1], op
[2]);
11765 printf (" bittt = 0x%x,", bittt
);
11766 printf (" cond = 0x%x,", cond
);
11767 printf (" rdst = 0x%x\n", rdst
);
11769 SYNTAX("bm%2 #%1, %0%S0");
11770 #line 917 "rx-decode.opc"
11771 ID(bmcc
); BWL(LSIZE
); S2cc(cond
); SC(bittt
); DR(rdst
);
11773 /*----------------------------------------------------------------------*/
11774 /* CONTROL REGISTERS */
11781 /** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */
11782 #line 910 "rx-decode.opc"
11783 int bittt AU
= op
[1] & 0x1f;
11784 #line 910 "rx-decode.opc"
11785 int rdst AU
= op
[2] & 0x0f;
11788 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11789 "/** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */",
11790 op
[0], op
[1], op
[2]);
11791 printf (" bittt = 0x%x,", bittt
);
11792 printf (" rdst = 0x%x\n", rdst
);
11794 SYNTAX("bnot #%1, %0");
11795 #line 910 "rx-decode.opc"
11796 ID(bnot
); BWL(LSIZE
); SC(bittt
); DR(rdst
);
11805 switch (op
[2] & 0xf0)
11822 goto op_semantics_93
;
11825 goto op_semantics_94
;
11831 switch (op
[2] & 0xf0)
11848 goto op_semantics_93
;
11851 goto op_semantics_94
;
11857 switch (op
[2] & 0xf0)
11874 goto op_semantics_93
;
11877 goto op_semantics_94
;
11883 switch (op
[2] & 0xf0)
11900 goto op_semantics_93
;
11903 goto op_semantics_94
;
11909 switch (op
[2] & 0xf0)
11926 goto op_semantics_93
;
11929 goto op_semantics_94
;
11935 switch (op
[2] & 0xf0)
11952 goto op_semantics_93
;
11955 goto op_semantics_94
;
11961 switch (op
[2] & 0xf0)
11978 goto op_semantics_93
;
11981 goto op_semantics_94
;
11987 switch (op
[2] & 0xf0)
12004 goto op_semantics_93
;
12007 goto op_semantics_94
;
12013 switch (op
[2] & 0xf0)
12030 goto op_semantics_93
;
12033 goto op_semantics_94
;
12039 switch (op
[2] & 0xf0)
12056 goto op_semantics_93
;
12059 goto op_semantics_94
;
12065 switch (op
[2] & 0xf0)
12082 goto op_semantics_93
;
12085 goto op_semantics_94
;
12091 switch (op
[2] & 0xf0)
12108 goto op_semantics_93
;
12111 goto op_semantics_94
;
12117 switch (op
[2] & 0xf0)
12134 goto op_semantics_93
;
12137 goto op_semantics_94
;
12143 switch (op
[2] & 0xf0)
12160 goto op_semantics_93
;
12163 goto op_semantics_94
;
12169 switch (op
[2] & 0xf0)
12186 goto op_semantics_93
;
12189 goto op_semantics_94
;
12195 switch (op
[2] & 0xf0)
12212 goto op_semantics_93
;
12215 goto op_semantics_94
;
12221 switch (op
[2] & 0xf0)
12238 goto op_semantics_93
;
12241 goto op_semantics_94
;
12247 switch (op
[2] & 0xf0)
12264 goto op_semantics_93
;
12267 goto op_semantics_94
;
12273 switch (op
[2] & 0xf0)
12290 goto op_semantics_93
;
12293 goto op_semantics_94
;
12299 switch (op
[2] & 0xf0)
12316 goto op_semantics_93
;
12319 goto op_semantics_94
;
12325 switch (op
[2] & 0xf0)
12342 goto op_semantics_93
;
12345 goto op_semantics_94
;
12351 switch (op
[2] & 0xf0)
12368 goto op_semantics_93
;
12371 goto op_semantics_94
;
12377 switch (op
[2] & 0xf0)
12394 goto op_semantics_93
;
12397 goto op_semantics_94
;
12403 switch (op
[2] & 0xf0)
12420 goto op_semantics_93
;
12423 goto op_semantics_94
;
12429 switch (op
[2] & 0xf0)
12446 goto op_semantics_93
;
12449 goto op_semantics_94
;
12455 switch (op
[2] & 0xf0)
12472 goto op_semantics_93
;
12475 goto op_semantics_94
;
12481 switch (op
[2] & 0xf0)
12498 goto op_semantics_93
;
12501 goto op_semantics_94
;
12507 switch (op
[2] & 0xf0)
12524 goto op_semantics_93
;
12527 goto op_semantics_94
;
12533 switch (op
[2] & 0xf0)
12550 goto op_semantics_93
;
12553 goto op_semantics_94
;
12559 switch (op
[2] & 0xf0)
12576 goto op_semantics_93
;
12579 goto op_semantics_94
;
12585 switch (op
[2] & 0xf0)
12602 goto op_semantics_93
;
12605 goto op_semantics_94
;
12609 default: UNSUPPORTED(); break;
12614 switch (op
[1] & 0xff)
12618 switch (op
[2] & 0x00)
12623 /** 1111 1110 00sz isrc bsrc rdst mov%s %0, [%1, %2] */
12624 #line 315 "rx-decode.opc"
12625 int sz AU
= (op
[1] >> 4) & 0x03;
12626 #line 315 "rx-decode.opc"
12627 int isrc AU
= op
[1] & 0x0f;
12628 #line 315 "rx-decode.opc"
12629 int bsrc AU
= (op
[2] >> 4) & 0x0f;
12630 #line 315 "rx-decode.opc"
12631 int rdst AU
= op
[2] & 0x0f;
12634 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
12635 "/** 1111 1110 00sz isrc bsrc rdst mov%s %0, [%1, %2] */",
12636 op
[0], op
[1], op
[2]);
12637 printf (" sz = 0x%x,", sz
);
12638 printf (" isrc = 0x%x,", isrc
);
12639 printf (" bsrc = 0x%x,", bsrc
);
12640 printf (" rdst = 0x%x\n", rdst
);
12642 SYNTAX("mov%s %0, [%1, %2]");
12643 #line 315 "rx-decode.opc"
12644 ID(movbir
); sBWL(sz
); DR(rdst
); SRR(isrc
); S2R(bsrc
); F_____
;
12652 switch (op
[2] & 0x00)
12655 goto op_semantics_95
;
12661 switch (op
[2] & 0x00)
12664 goto op_semantics_95
;
12670 switch (op
[2] & 0x00)
12673 goto op_semantics_95
;
12679 switch (op
[2] & 0x00)
12682 goto op_semantics_95
;
12688 switch (op
[2] & 0x00)
12691 goto op_semantics_95
;
12697 switch (op
[2] & 0x00)
12700 goto op_semantics_95
;
12706 switch (op
[2] & 0x00)
12709 goto op_semantics_95
;
12715 switch (op
[2] & 0x00)
12718 goto op_semantics_95
;
12724 switch (op
[2] & 0x00)
12727 goto op_semantics_95
;
12733 switch (op
[2] & 0x00)
12736 goto op_semantics_95
;
12742 switch (op
[2] & 0x00)
12745 goto op_semantics_95
;
12751 switch (op
[2] & 0x00)
12754 goto op_semantics_95
;
12760 switch (op
[2] & 0x00)
12763 goto op_semantics_95
;
12769 switch (op
[2] & 0x00)
12772 goto op_semantics_95
;
12778 switch (op
[2] & 0x00)
12781 goto op_semantics_95
;
12787 switch (op
[2] & 0x00)
12790 goto op_semantics_95
;
12796 switch (op
[2] & 0x00)
12799 goto op_semantics_95
;
12805 switch (op
[2] & 0x00)
12808 goto op_semantics_95
;
12814 switch (op
[2] & 0x00)
12817 goto op_semantics_95
;
12823 switch (op
[2] & 0x00)
12826 goto op_semantics_95
;
12832 switch (op
[2] & 0x00)
12835 goto op_semantics_95
;
12841 switch (op
[2] & 0x00)
12844 goto op_semantics_95
;
12850 switch (op
[2] & 0x00)
12853 goto op_semantics_95
;
12859 switch (op
[2] & 0x00)
12862 goto op_semantics_95
;
12868 switch (op
[2] & 0x00)
12871 goto op_semantics_95
;
12877 switch (op
[2] & 0x00)
12880 goto op_semantics_95
;
12886 switch (op
[2] & 0x00)
12889 goto op_semantics_95
;
12895 switch (op
[2] & 0x00)
12898 goto op_semantics_95
;
12904 switch (op
[2] & 0x00)
12907 goto op_semantics_95
;
12913 switch (op
[2] & 0x00)
12916 goto op_semantics_95
;
12922 switch (op
[2] & 0x00)
12925 goto op_semantics_95
;
12931 switch (op
[2] & 0x00)
12934 goto op_semantics_95
;
12940 switch (op
[2] & 0x00)
12943 goto op_semantics_95
;
12949 switch (op
[2] & 0x00)
12952 goto op_semantics_95
;
12958 switch (op
[2] & 0x00)
12961 goto op_semantics_95
;
12967 switch (op
[2] & 0x00)
12970 goto op_semantics_95
;
12976 switch (op
[2] & 0x00)
12979 goto op_semantics_95
;
12985 switch (op
[2] & 0x00)
12988 goto op_semantics_95
;
12994 switch (op
[2] & 0x00)
12997 goto op_semantics_95
;
13003 switch (op
[2] & 0x00)
13006 goto op_semantics_95
;
13012 switch (op
[2] & 0x00)
13015 goto op_semantics_95
;
13021 switch (op
[2] & 0x00)
13024 goto op_semantics_95
;
13030 switch (op
[2] & 0x00)
13033 goto op_semantics_95
;
13039 switch (op
[2] & 0x00)
13042 goto op_semantics_95
;
13048 switch (op
[2] & 0x00)
13051 goto op_semantics_95
;
13057 switch (op
[2] & 0x00)
13060 goto op_semantics_95
;
13066 switch (op
[2] & 0x00)
13069 goto op_semantics_95
;
13075 switch (op
[2] & 0x00)
13080 /** 1111 1110 01sz isrc bsrc rdst mov%s [%1, %2], %0 */
13081 #line 312 "rx-decode.opc"
13082 int sz AU
= (op
[1] >> 4) & 0x03;
13083 #line 312 "rx-decode.opc"
13084 int isrc AU
= op
[1] & 0x0f;
13085 #line 312 "rx-decode.opc"
13086 int bsrc AU
= (op
[2] >> 4) & 0x0f;
13087 #line 312 "rx-decode.opc"
13088 int rdst AU
= op
[2] & 0x0f;
13091 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
13092 "/** 1111 1110 01sz isrc bsrc rdst mov%s [%1, %2], %0 */",
13093 op
[0], op
[1], op
[2]);
13094 printf (" sz = 0x%x,", sz
);
13095 printf (" isrc = 0x%x,", isrc
);
13096 printf (" bsrc = 0x%x,", bsrc
);
13097 printf (" rdst = 0x%x\n", rdst
);
13099 SYNTAX("mov%s [%1, %2], %0");
13100 #line 312 "rx-decode.opc"
13101 ID(movbi
); sBWL(sz
); DR(rdst
); SRR(isrc
); S2R(bsrc
); F_____
;
13109 switch (op
[2] & 0x00)
13112 goto op_semantics_96
;
13118 switch (op
[2] & 0x00)
13121 goto op_semantics_96
;
13127 switch (op
[2] & 0x00)
13130 goto op_semantics_96
;
13136 switch (op
[2] & 0x00)
13139 goto op_semantics_96
;
13145 switch (op
[2] & 0x00)
13148 goto op_semantics_96
;
13154 switch (op
[2] & 0x00)
13157 goto op_semantics_96
;
13163 switch (op
[2] & 0x00)
13166 goto op_semantics_96
;
13172 switch (op
[2] & 0x00)
13175 goto op_semantics_96
;
13181 switch (op
[2] & 0x00)
13184 goto op_semantics_96
;
13190 switch (op
[2] & 0x00)
13193 goto op_semantics_96
;
13199 switch (op
[2] & 0x00)
13202 goto op_semantics_96
;
13208 switch (op
[2] & 0x00)
13211 goto op_semantics_96
;
13217 switch (op
[2] & 0x00)
13220 goto op_semantics_96
;
13226 switch (op
[2] & 0x00)
13229 goto op_semantics_96
;
13235 switch (op
[2] & 0x00)
13238 goto op_semantics_96
;
13244 switch (op
[2] & 0x00)
13247 goto op_semantics_96
;
13253 switch (op
[2] & 0x00)
13256 goto op_semantics_96
;
13262 switch (op
[2] & 0x00)
13265 goto op_semantics_96
;
13271 switch (op
[2] & 0x00)
13274 goto op_semantics_96
;
13280 switch (op
[2] & 0x00)
13283 goto op_semantics_96
;
13289 switch (op
[2] & 0x00)
13292 goto op_semantics_96
;
13298 switch (op
[2] & 0x00)
13301 goto op_semantics_96
;
13307 switch (op
[2] & 0x00)
13310 goto op_semantics_96
;
13316 switch (op
[2] & 0x00)
13319 goto op_semantics_96
;
13325 switch (op
[2] & 0x00)
13328 goto op_semantics_96
;
13334 switch (op
[2] & 0x00)
13337 goto op_semantics_96
;
13343 switch (op
[2] & 0x00)
13346 goto op_semantics_96
;
13352 switch (op
[2] & 0x00)
13355 goto op_semantics_96
;
13361 switch (op
[2] & 0x00)
13364 goto op_semantics_96
;
13370 switch (op
[2] & 0x00)
13373 goto op_semantics_96
;
13379 switch (op
[2] & 0x00)
13382 goto op_semantics_96
;
13388 switch (op
[2] & 0x00)
13391 goto op_semantics_96
;
13397 switch (op
[2] & 0x00)
13400 goto op_semantics_96
;
13406 switch (op
[2] & 0x00)
13409 goto op_semantics_96
;
13415 switch (op
[2] & 0x00)
13418 goto op_semantics_96
;
13424 switch (op
[2] & 0x00)
13427 goto op_semantics_96
;
13433 switch (op
[2] & 0x00)
13436 goto op_semantics_96
;
13442 switch (op
[2] & 0x00)
13445 goto op_semantics_96
;
13451 switch (op
[2] & 0x00)
13454 goto op_semantics_96
;
13460 switch (op
[2] & 0x00)
13463 goto op_semantics_96
;
13469 switch (op
[2] & 0x00)
13472 goto op_semantics_96
;
13478 switch (op
[2] & 0x00)
13481 goto op_semantics_96
;
13487 switch (op
[2] & 0x00)
13490 goto op_semantics_96
;
13496 switch (op
[2] & 0x00)
13499 goto op_semantics_96
;
13505 switch (op
[2] & 0x00)
13508 goto op_semantics_96
;
13514 switch (op
[2] & 0x00)
13517 goto op_semantics_96
;
13523 switch (op
[2] & 0x00)
13526 goto op_semantics_96
;
13532 switch (op
[2] & 0x00)
13537 /** 1111 1110 11sz isrc bsrc rdst movu%s [%1, %2], %0 */
13538 #line 318 "rx-decode.opc"
13539 int sz AU
= (op
[1] >> 4) & 0x03;
13540 #line 318 "rx-decode.opc"
13541 int isrc AU
= op
[1] & 0x0f;
13542 #line 318 "rx-decode.opc"
13543 int bsrc AU
= (op
[2] >> 4) & 0x0f;
13544 #line 318 "rx-decode.opc"
13545 int rdst AU
= op
[2] & 0x0f;
13548 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
13549 "/** 1111 1110 11sz isrc bsrc rdst movu%s [%1, %2], %0 */",
13550 op
[0], op
[1], op
[2]);
13551 printf (" sz = 0x%x,", sz
);
13552 printf (" isrc = 0x%x,", isrc
);
13553 printf (" bsrc = 0x%x,", bsrc
);
13554 printf (" rdst = 0x%x\n", rdst
);
13556 SYNTAX("movu%s [%1, %2], %0");
13557 #line 318 "rx-decode.opc"
13558 ID(movbi
); uBWL(sz
); DR(rdst
); SRR(isrc
); S2R(bsrc
); F_____
;
13566 switch (op
[2] & 0x00)
13569 goto op_semantics_97
;
13575 switch (op
[2] & 0x00)
13578 goto op_semantics_97
;
13584 switch (op
[2] & 0x00)
13587 goto op_semantics_97
;
13593 switch (op
[2] & 0x00)
13596 goto op_semantics_97
;
13602 switch (op
[2] & 0x00)
13605 goto op_semantics_97
;
13611 switch (op
[2] & 0x00)
13614 goto op_semantics_97
;
13620 switch (op
[2] & 0x00)
13623 goto op_semantics_97
;
13629 switch (op
[2] & 0x00)
13632 goto op_semantics_97
;
13638 switch (op
[2] & 0x00)
13641 goto op_semantics_97
;
13647 switch (op
[2] & 0x00)
13650 goto op_semantics_97
;
13656 switch (op
[2] & 0x00)
13659 goto op_semantics_97
;
13665 switch (op
[2] & 0x00)
13668 goto op_semantics_97
;
13674 switch (op
[2] & 0x00)
13677 goto op_semantics_97
;
13683 switch (op
[2] & 0x00)
13686 goto op_semantics_97
;
13692 switch (op
[2] & 0x00)
13695 goto op_semantics_97
;
13701 switch (op
[2] & 0x00)
13704 goto op_semantics_97
;
13710 switch (op
[2] & 0x00)
13713 goto op_semantics_97
;
13719 switch (op
[2] & 0x00)
13722 goto op_semantics_97
;
13728 switch (op
[2] & 0x00)
13731 goto op_semantics_97
;
13737 switch (op
[2] & 0x00)
13740 goto op_semantics_97
;
13746 switch (op
[2] & 0x00)
13749 goto op_semantics_97
;
13755 switch (op
[2] & 0x00)
13758 goto op_semantics_97
;
13764 switch (op
[2] & 0x00)
13767 goto op_semantics_97
;
13773 switch (op
[2] & 0x00)
13776 goto op_semantics_97
;
13782 switch (op
[2] & 0x00)
13785 goto op_semantics_97
;
13791 switch (op
[2] & 0x00)
13794 goto op_semantics_97
;
13800 switch (op
[2] & 0x00)
13803 goto op_semantics_97
;
13809 switch (op
[2] & 0x00)
13812 goto op_semantics_97
;
13818 switch (op
[2] & 0x00)
13821 goto op_semantics_97
;
13827 switch (op
[2] & 0x00)
13830 goto op_semantics_97
;
13836 switch (op
[2] & 0x00)
13839 goto op_semantics_97
;
13845 switch (op
[2] & 0x00)
13848 goto op_semantics_97
;
13854 switch (op
[2] & 0x00)
13857 goto op_semantics_97
;
13863 switch (op
[2] & 0x00)
13866 goto op_semantics_97
;
13872 switch (op
[2] & 0x00)
13875 goto op_semantics_97
;
13881 switch (op
[2] & 0x00)
13884 goto op_semantics_97
;
13890 switch (op
[2] & 0x00)
13893 goto op_semantics_97
;
13899 switch (op
[2] & 0x00)
13902 goto op_semantics_97
;
13908 switch (op
[2] & 0x00)
13911 goto op_semantics_97
;
13917 switch (op
[2] & 0x00)
13920 goto op_semantics_97
;
13926 switch (op
[2] & 0x00)
13929 goto op_semantics_97
;
13935 switch (op
[2] & 0x00)
13938 goto op_semantics_97
;
13944 switch (op
[2] & 0x00)
13947 goto op_semantics_97
;
13953 switch (op
[2] & 0x00)
13956 goto op_semantics_97
;
13962 switch (op
[2] & 0x00)
13965 goto op_semantics_97
;
13971 switch (op
[2] & 0x00)
13974 goto op_semantics_97
;
13980 switch (op
[2] & 0x00)
13983 goto op_semantics_97
;
13987 default: UNSUPPORTED(); break;
13992 switch (op
[1] & 0xff)
13996 switch (op
[2] & 0x00)
14001 /** 1111 1111 0000 rdst srca srcb sub %2, %1, %0 */
14002 #line 522 "rx-decode.opc"
14003 int rdst AU
= op
[1] & 0x0f;
14004 #line 522 "rx-decode.opc"
14005 int srca AU
= (op
[2] >> 4) & 0x0f;
14006 #line 522 "rx-decode.opc"
14007 int srcb AU
= op
[2] & 0x0f;
14010 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14011 "/** 1111 1111 0000 rdst srca srcb sub %2, %1, %0 */",
14012 op
[0], op
[1], op
[2]);
14013 printf (" rdst = 0x%x,", rdst
);
14014 printf (" srca = 0x%x,", srca
);
14015 printf (" srcb = 0x%x\n", srcb
);
14017 SYNTAX("sub %2, %1, %0");
14018 #line 522 "rx-decode.opc"
14019 ID(sub
); DR(rdst
); SR(srcb
); S2R(srca
); F_OSZC
;
14021 /*----------------------------------------------------------------------*/
14030 switch (op
[2] & 0x00)
14033 goto op_semantics_98
;
14039 switch (op
[2] & 0x00)
14042 goto op_semantics_98
;
14048 switch (op
[2] & 0x00)
14051 goto op_semantics_98
;
14057 switch (op
[2] & 0x00)
14060 goto op_semantics_98
;
14066 switch (op
[2] & 0x00)
14069 goto op_semantics_98
;
14075 switch (op
[2] & 0x00)
14078 goto op_semantics_98
;
14084 switch (op
[2] & 0x00)
14087 goto op_semantics_98
;
14093 switch (op
[2] & 0x00)
14096 goto op_semantics_98
;
14102 switch (op
[2] & 0x00)
14105 goto op_semantics_98
;
14111 switch (op
[2] & 0x00)
14114 goto op_semantics_98
;
14120 switch (op
[2] & 0x00)
14123 goto op_semantics_98
;
14129 switch (op
[2] & 0x00)
14132 goto op_semantics_98
;
14138 switch (op
[2] & 0x00)
14141 goto op_semantics_98
;
14147 switch (op
[2] & 0x00)
14150 goto op_semantics_98
;
14156 switch (op
[2] & 0x00)
14159 goto op_semantics_98
;
14165 switch (op
[2] & 0x00)
14170 /** 1111 1111 0010 rdst srca srcb add %2, %1, %0 */
14171 #line 489 "rx-decode.opc"
14172 int rdst AU
= op
[1] & 0x0f;
14173 #line 489 "rx-decode.opc"
14174 int srca AU
= (op
[2] >> 4) & 0x0f;
14175 #line 489 "rx-decode.opc"
14176 int srcb AU
= op
[2] & 0x0f;
14179 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14180 "/** 1111 1111 0010 rdst srca srcb add %2, %1, %0 */",
14181 op
[0], op
[1], op
[2]);
14182 printf (" rdst = 0x%x,", rdst
);
14183 printf (" srca = 0x%x,", srca
);
14184 printf (" srcb = 0x%x\n", srcb
);
14186 SYNTAX("add %2, %1, %0");
14187 #line 489 "rx-decode.opc"
14188 ID(add
); DR(rdst
); SR(srcb
); S2R(srca
); F_OSZC
;
14190 /*----------------------------------------------------------------------*/
14199 switch (op
[2] & 0x00)
14202 goto op_semantics_99
;
14208 switch (op
[2] & 0x00)
14211 goto op_semantics_99
;
14217 switch (op
[2] & 0x00)
14220 goto op_semantics_99
;
14226 switch (op
[2] & 0x00)
14229 goto op_semantics_99
;
14235 switch (op
[2] & 0x00)
14238 goto op_semantics_99
;
14244 switch (op
[2] & 0x00)
14247 goto op_semantics_99
;
14253 switch (op
[2] & 0x00)
14256 goto op_semantics_99
;
14262 switch (op
[2] & 0x00)
14265 goto op_semantics_99
;
14271 switch (op
[2] & 0x00)
14274 goto op_semantics_99
;
14280 switch (op
[2] & 0x00)
14283 goto op_semantics_99
;
14289 switch (op
[2] & 0x00)
14292 goto op_semantics_99
;
14298 switch (op
[2] & 0x00)
14301 goto op_semantics_99
;
14307 switch (op
[2] & 0x00)
14310 goto op_semantics_99
;
14316 switch (op
[2] & 0x00)
14319 goto op_semantics_99
;
14325 switch (op
[2] & 0x00)
14328 goto op_semantics_99
;
14334 switch (op
[2] & 0x00)
14339 /** 1111 1111 0011 rdst srca srcb mul %2, %1, %0 */
14340 #line 591 "rx-decode.opc"
14341 int rdst AU
= op
[1] & 0x0f;
14342 #line 591 "rx-decode.opc"
14343 int srca AU
= (op
[2] >> 4) & 0x0f;
14344 #line 591 "rx-decode.opc"
14345 int srcb AU
= op
[2] & 0x0f;
14348 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14349 "/** 1111 1111 0011 rdst srca srcb mul %2, %1, %0 */",
14350 op
[0], op
[1], op
[2]);
14351 printf (" rdst = 0x%x,", rdst
);
14352 printf (" srca = 0x%x,", srca
);
14353 printf (" srcb = 0x%x\n", srcb
);
14355 SYNTAX("mul %2, %1, %0");
14356 #line 591 "rx-decode.opc"
14357 ID(mul
); DR(rdst
); SR(srcb
); S2R(srca
); F_____
;
14359 /*----------------------------------------------------------------------*/
14368 switch (op
[2] & 0x00)
14371 goto op_semantics_100
;
14377 switch (op
[2] & 0x00)
14380 goto op_semantics_100
;
14386 switch (op
[2] & 0x00)
14389 goto op_semantics_100
;
14395 switch (op
[2] & 0x00)
14398 goto op_semantics_100
;
14404 switch (op
[2] & 0x00)
14407 goto op_semantics_100
;
14413 switch (op
[2] & 0x00)
14416 goto op_semantics_100
;
14422 switch (op
[2] & 0x00)
14425 goto op_semantics_100
;
14431 switch (op
[2] & 0x00)
14434 goto op_semantics_100
;
14440 switch (op
[2] & 0x00)
14443 goto op_semantics_100
;
14449 switch (op
[2] & 0x00)
14452 goto op_semantics_100
;
14458 switch (op
[2] & 0x00)
14461 goto op_semantics_100
;
14467 switch (op
[2] & 0x00)
14470 goto op_semantics_100
;
14476 switch (op
[2] & 0x00)
14479 goto op_semantics_100
;
14485 switch (op
[2] & 0x00)
14488 goto op_semantics_100
;
14494 switch (op
[2] & 0x00)
14497 goto op_semantics_100
;
14503 switch (op
[2] & 0x00)
14508 /** 1111 1111 0100 rdst srca srcb and %2, %1, %0 */
14509 #line 399 "rx-decode.opc"
14510 int rdst AU
= op
[1] & 0x0f;
14511 #line 399 "rx-decode.opc"
14512 int srca AU
= (op
[2] >> 4) & 0x0f;
14513 #line 399 "rx-decode.opc"
14514 int srcb AU
= op
[2] & 0x0f;
14517 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14518 "/** 1111 1111 0100 rdst srca srcb and %2, %1, %0 */",
14519 op
[0], op
[1], op
[2]);
14520 printf (" rdst = 0x%x,", rdst
);
14521 printf (" srca = 0x%x,", srca
);
14522 printf (" srcb = 0x%x\n", srcb
);
14524 SYNTAX("and %2, %1, %0");
14525 #line 399 "rx-decode.opc"
14526 ID(and); DR(rdst
); SR(srcb
); S2R(srca
); F__SZ_
;
14528 /*----------------------------------------------------------------------*/
14537 switch (op
[2] & 0x00)
14540 goto op_semantics_101
;
14546 switch (op
[2] & 0x00)
14549 goto op_semantics_101
;
14555 switch (op
[2] & 0x00)
14558 goto op_semantics_101
;
14564 switch (op
[2] & 0x00)
14567 goto op_semantics_101
;
14573 switch (op
[2] & 0x00)
14576 goto op_semantics_101
;
14582 switch (op
[2] & 0x00)
14585 goto op_semantics_101
;
14591 switch (op
[2] & 0x00)
14594 goto op_semantics_101
;
14600 switch (op
[2] & 0x00)
14603 goto op_semantics_101
;
14609 switch (op
[2] & 0x00)
14612 goto op_semantics_101
;
14618 switch (op
[2] & 0x00)
14621 goto op_semantics_101
;
14627 switch (op
[2] & 0x00)
14630 goto op_semantics_101
;
14636 switch (op
[2] & 0x00)
14639 goto op_semantics_101
;
14645 switch (op
[2] & 0x00)
14648 goto op_semantics_101
;
14654 switch (op
[2] & 0x00)
14657 goto op_semantics_101
;
14663 switch (op
[2] & 0x00)
14666 goto op_semantics_101
;
14672 switch (op
[2] & 0x00)
14677 /** 1111 1111 0101 rdst srca srcb or %2, %1, %0 */
14678 #line 417 "rx-decode.opc"
14679 int rdst AU
= op
[1] & 0x0f;
14680 #line 417 "rx-decode.opc"
14681 int srca AU
= (op
[2] >> 4) & 0x0f;
14682 #line 417 "rx-decode.opc"
14683 int srcb AU
= op
[2] & 0x0f;
14686 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14687 "/** 1111 1111 0101 rdst srca srcb or %2, %1, %0 */",
14688 op
[0], op
[1], op
[2]);
14689 printf (" rdst = 0x%x,", rdst
);
14690 printf (" srca = 0x%x,", srca
);
14691 printf (" srcb = 0x%x\n", srcb
);
14693 SYNTAX("or %2, %1, %0");
14694 #line 417 "rx-decode.opc"
14695 ID(or); DR(rdst
); SR(srcb
); S2R(srca
); F__SZ_
;
14697 /*----------------------------------------------------------------------*/
14706 switch (op
[2] & 0x00)
14709 goto op_semantics_102
;
14715 switch (op
[2] & 0x00)
14718 goto op_semantics_102
;
14724 switch (op
[2] & 0x00)
14727 goto op_semantics_102
;
14733 switch (op
[2] & 0x00)
14736 goto op_semantics_102
;
14742 switch (op
[2] & 0x00)
14745 goto op_semantics_102
;
14751 switch (op
[2] & 0x00)
14754 goto op_semantics_102
;
14760 switch (op
[2] & 0x00)
14763 goto op_semantics_102
;
14769 switch (op
[2] & 0x00)
14772 goto op_semantics_102
;
14778 switch (op
[2] & 0x00)
14781 goto op_semantics_102
;
14787 switch (op
[2] & 0x00)
14790 goto op_semantics_102
;
14796 switch (op
[2] & 0x00)
14799 goto op_semantics_102
;
14805 switch (op
[2] & 0x00)
14808 goto op_semantics_102
;
14814 switch (op
[2] & 0x00)
14817 goto op_semantics_102
;
14823 switch (op
[2] & 0x00)
14826 goto op_semantics_102
;
14832 switch (op
[2] & 0x00)
14835 goto op_semantics_102
;
14839 default: UNSUPPORTED(); break;
14842 default: UNSUPPORTED(); break;
14844 #line 974 "rx-decode.opc"
14846 return rx
->n_bytes
;
This page took 0.359911 seconds and 4 git commands to generate.