1 #line 1 "rx-decode.opc"
10 #define RX_OPCODE_BIG_ENDIAN 0
14 RX_Opcode_Decoded
* rx
;
15 int (* getbyte
)(void *);
26 /* These are for when the upper bits are "don't care" or "undefined". */
56 #define ID(x) rx->id = RXO_##x
57 #define OP(n,t,r,a) (rx->op[n].type = t, \
59 rx->op[n].addend = a )
60 #define OPs(n,t,r,a,s) (OP (n,t,r,a), \
63 /* This is for the BWL and BW bitfields. */
64 static int SCALE
[] = { 1, 2, 4 };
65 /* This is for the prefix size enum. */
66 static int PSCALE
[] = { 4, 1, 1, 1, 2, 2, 2, 3, 4 };
68 static int flagmap
[] = {0, 1, 2, 3, 0, 0, 0, 0,
69 16, 17, 0, 0, 0, 0, 0, 0 };
71 static int dsp3map
[] = { 8, 9, 10, 3, 4, 5, 6, 7 };
74 *C a constant (immediate) c
76 *I Register indirect, no offset
77 *Is Register indirect, with offset
78 *D standard displacement: type (r,[r],dsp8,dsp16 code), register, BWL code
79 *P standard displacement: type (r,[r]), reg, assumes UByte
80 *Pm memex displacement: type (r,[r]), reg, memex code
81 *cc condition code. */
83 #define DC(c) OP (0, RX_Operand_Immediate, 0, c)
84 #define DR(r) OP (0, RX_Operand_Register, r, 0)
85 #define DI(r,a) OP (0, RX_Operand_Indirect, r, a)
86 #define DIs(r,a,s) OP (0, RX_Operand_Indirect, r, (a) * SCALE[s])
87 #define DD(t,r,s) rx_disp (0, t, r, bwl[s], ld);
88 #define DF(r) OP (0, RX_Operand_Flag, flagmap[r], 0)
90 #define SC(i) OP (1, RX_Operand_Immediate, 0, i)
91 #define SR(r) OP (1, RX_Operand_Register, r, 0)
92 #define SRR(r) OP (1, RX_Operand_TwoReg, r, 0)
93 #define SI(r,a) OP (1, RX_Operand_Indirect, r, a)
94 #define SIs(r,a,s) OP (1, RX_Operand_Indirect, r, (a) * SCALE[s])
95 #define SD(t,r,s) rx_disp (1, t, r, bwl[s], ld);
96 #define SP(t,r) rx_disp (1, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 1);
97 #define SPm(t,r,m) rx_disp (1, t, r, memex[m], ld); rx->op[1].size = memex[m];
98 #define Scc(cc) OP (1, RX_Operand_Condition, cc, 0)
100 #define S2C(i) OP (2, RX_Operand_Immediate, 0, i)
101 #define S2R(r) OP (2, RX_Operand_Register, r, 0)
102 #define S2I(r,a) OP (2, RX_Operand_Indirect, r, a)
103 #define S2Is(r,a,s) OP (2, RX_Operand_Indirect, r, (a) * SCALE[s])
104 #define S2D(t,r,s) rx_disp (2, t, r, bwl[s], ld);
105 #define S2P(t,r) rx_disp (2, t, r, (t!=3) ? RX_UByte : RX_Long, ld); P(t, 2);
106 #define S2Pm(t,r,m) rx_disp (2, t, r, memex[m], ld); rx->op[2].size = memex[m];
107 #define S2cc(cc) OP (2, RX_Operand_Condition, cc, 0)
109 #define BWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = bwl[sz]
110 #define sBWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = sbwl[sz]
111 #define uBWL(sz) rx->op[0].size = rx->op[1].size = rx->op[2].size = rx->size = ubwl[sz]
112 #define P(t, n) rx->op[n].size = (t!=3) ? RX_UByte : RX_Long;
114 #define F(f) store_flags(rx, f)
116 #define AU ATTRIBUTE_UNUSED
117 #define GETBYTE() (ld->op [ld->rx->n_bytes++] = ld->getbyte (ld->ptr))
119 #define SYNTAX(x) rx->syntax = x
121 #define UNSUPPORTED() \
122 rx->syntax = "*unknown*"
124 #define IMM(sf) immediate (sf, 0, ld)
125 #define IMMex(sf) immediate (sf, 1, ld)
128 immediate (int sfield
, int ex
, LocalData
* ld
)
130 unsigned long i
= 0, j
;
134 #define B ((unsigned long) GETBYTE())
136 #if RX_OPCODE_BIG_ENDIAN
138 if (ex
&& (i
& 0x80))
149 if (ex
&& (j
& 0x80))
155 #if RX_OPCODE_BIG_ENDIAN
164 if (ex
&& (i
& 0x800000))
168 #if RX_OPCODE_BIG_ENDIAN
175 if (ex
&& (i
& 0x8000))
180 if (ex
&& (i
& 0x80))
190 rx_disp (int n
, int type
, int reg
, int size
, LocalData
* ld
)
194 ld
->rx
->op
[n
].reg
= reg
;
198 ld
->rx
->op
[n
].type
= RX_Operand_Register
;
201 ld
->rx
->op
[n
].type
= RX_Operand_Indirect
;
202 ld
->rx
->op
[n
].addend
= 0;
205 ld
->rx
->op
[n
].type
= RX_Operand_Indirect
;
207 ld
->rx
->op
[n
].addend
= disp
* PSCALE
[size
];
210 ld
->rx
->op
[n
].type
= RX_Operand_Indirect
;
212 #if RX_OPCODE_BIG_ENDIAN
213 disp
= disp
* 256 + GETBYTE ();
215 disp
= disp
+ GETBYTE () * 256;
217 ld
->rx
->op
[n
].addend
= disp
* PSCALE
[size
];
230 #define F___ZC rx->flags_0 = rx->flags_s = xZ|xC;
231 #define F__SZ_ rx->flags_0 = rx->flags_s = xS|xZ;
232 #define F__SZC rx->flags_0 = rx->flags_s = xS|xZ|xC;
233 #define F_0SZC rx->flags_0 = xO|xS|xZ|xC; rx->flags_s = xS|xZ|xC;
234 #define F_O___ rx->flags_0 = rx->flags_s = xO;
235 #define F_OS__ rx->flags_0 = rx->flags_s = xO|xS;
236 #define F_OSZ_ rx->flags_0 = rx->flags_s = xO|xS|xZ;
237 #define F_OSZC rx->flags_0 = rx->flags_s = xO|xS|xZ|xC;
240 rx_decode_opcode (unsigned long pc AU
,
241 RX_Opcode_Decoded
* rx
,
242 int (* getbyte
)(void *),
245 LocalData lds
, * ld
= &lds
;
246 unsigned char op
[20] = {0};
249 lds
.getbyte
= getbyte
;
253 memset (rx
, 0, sizeof (*rx
));
257 /*----------------------------------------------------------------------*/
261 switch (op
[0] & 0xff)
268 printf ("\033[33m%s\033[0m %02x\n",
269 "/** 0000 0000 brk */",
273 #line 955 "rx-decode.opc"
283 printf ("\033[33m%s\033[0m %02x\n",
284 "/** 0000 0001 dbt */",
288 #line 958 "rx-decode.opc"
298 printf ("\033[33m%s\033[0m %02x\n",
299 "/** 0000 0010 rts */",
303 #line 744 "rx-decode.opc"
306 /*----------------------------------------------------------------------*/
316 printf ("\033[33m%s\033[0m %02x\n",
317 "/** 0000 0011 nop */",
321 #line 750 "rx-decode.opc"
324 /*----------------------------------------------------------------------*/
325 /* STRING FUNCTIONS */
331 /** 0000 0100 bra.a %a0 */
334 printf ("\033[33m%s\033[0m %02x\n",
335 "/** 0000 0100 bra.a %a0 */",
339 #line 722 "rx-decode.opc"
340 ID(branch
); DC(pc
+ IMMex(3));
346 /** 0000 0101 bsr.a %a0 */
349 printf ("\033[33m%s\033[0m %02x\n",
350 "/** 0000 0101 bsr.a %a0 */",
354 #line 738 "rx-decode.opc"
355 ID(jsr
); DC(pc
+ IMMex(3));
361 switch (op
[1] & 0xff)
365 switch (op
[2] & 0x00)
370 /** 0000 0110 mx00 00ss rsrc rdst sub %2%S2, %1 */
371 #line 518 "rx-decode.opc"
372 int mx AU
= (op
[1] >> 6) & 0x03;
373 #line 518 "rx-decode.opc"
374 int ss AU
= op
[1] & 0x03;
375 #line 518 "rx-decode.opc"
376 int rsrc AU
= (op
[2] >> 4) & 0x0f;
377 #line 518 "rx-decode.opc"
378 int rdst AU
= op
[2] & 0x0f;
381 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
382 "/** 0000 0110 mx00 00ss rsrc rdst sub %2%S2, %1 */",
383 op
[0], op
[1], op
[2]);
384 printf (" mx = 0x%x,", mx
);
385 printf (" ss = 0x%x,", ss
);
386 printf (" rsrc = 0x%x,", rsrc
);
387 printf (" rdst = 0x%x\n", rdst
);
389 SYNTAX("sub %2%S2, %1");
390 #line 518 "rx-decode.opc"
391 ID(sub
); S2Pm(ss
, rsrc
, mx
); SR(rdst
); DR(rdst
); F_OSZC
;
399 switch (op
[2] & 0x00)
408 switch (op
[2] & 0x00)
417 switch (op
[2] & 0x00)
426 switch (op
[2] & 0x00)
431 /** 0000 0110 mx00 01ss rsrc rdst cmp %2%S2, %1 */
432 #line 506 "rx-decode.opc"
433 int mx AU
= (op
[1] >> 6) & 0x03;
434 #line 506 "rx-decode.opc"
435 int ss AU
= op
[1] & 0x03;
436 #line 506 "rx-decode.opc"
437 int rsrc AU
= (op
[2] >> 4) & 0x0f;
438 #line 506 "rx-decode.opc"
439 int rdst AU
= op
[2] & 0x0f;
442 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
443 "/** 0000 0110 mx00 01ss rsrc rdst cmp %2%S2, %1 */",
444 op
[0], op
[1], op
[2]);
445 printf (" mx = 0x%x,", mx
);
446 printf (" ss = 0x%x,", ss
);
447 printf (" rsrc = 0x%x,", rsrc
);
448 printf (" rdst = 0x%x\n", rdst
);
450 SYNTAX("cmp %2%S2, %1");
451 #line 506 "rx-decode.opc"
452 ID(sub
); S2Pm(ss
, rsrc
, mx
); SR(rdst
); F_OSZC
;
454 /*----------------------------------------------------------------------*/
463 switch (op
[2] & 0x00)
472 switch (op
[2] & 0x00)
481 switch (op
[2] & 0x00)
490 switch (op
[2] & 0x00)
495 /** 0000 0110 mx00 10ss rsrc rdst add %1%S1, %0 */
496 #line 482 "rx-decode.opc"
497 int mx AU
= (op
[1] >> 6) & 0x03;
498 #line 482 "rx-decode.opc"
499 int ss AU
= op
[1] & 0x03;
500 #line 482 "rx-decode.opc"
501 int rsrc AU
= (op
[2] >> 4) & 0x0f;
502 #line 482 "rx-decode.opc"
503 int rdst AU
= op
[2] & 0x0f;
506 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
507 "/** 0000 0110 mx00 10ss rsrc rdst add %1%S1, %0 */",
508 op
[0], op
[1], op
[2]);
509 printf (" mx = 0x%x,", mx
);
510 printf (" ss = 0x%x,", ss
);
511 printf (" rsrc = 0x%x,", rsrc
);
512 printf (" rdst = 0x%x\n", rdst
);
514 SYNTAX("add %1%S1, %0");
515 #line 482 "rx-decode.opc"
516 ID(add
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_OSZC
;
524 switch (op
[2] & 0x00)
533 switch (op
[2] & 0x00)
542 switch (op
[2] & 0x00)
551 switch (op
[2] & 0x00)
556 /** 0000 0110 mx00 11ss rsrc rdst mul %1%S1, %0 */
557 #line 587 "rx-decode.opc"
558 int mx AU
= (op
[1] >> 6) & 0x03;
559 #line 587 "rx-decode.opc"
560 int ss AU
= op
[1] & 0x03;
561 #line 587 "rx-decode.opc"
562 int rsrc AU
= (op
[2] >> 4) & 0x0f;
563 #line 587 "rx-decode.opc"
564 int rdst AU
= op
[2] & 0x0f;
567 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
568 "/** 0000 0110 mx00 11ss rsrc rdst mul %1%S1, %0 */",
569 op
[0], op
[1], op
[2]);
570 printf (" mx = 0x%x,", mx
);
571 printf (" ss = 0x%x,", ss
);
572 printf (" rsrc = 0x%x,", rsrc
);
573 printf (" rdst = 0x%x\n", rdst
);
575 SYNTAX("mul %1%S1, %0");
576 #line 587 "rx-decode.opc"
577 ID(mul
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_____
;
585 switch (op
[2] & 0x00)
594 switch (op
[2] & 0x00)
603 switch (op
[2] & 0x00)
612 switch (op
[2] & 0x00)
617 /** 0000 0110 mx01 00ss rsrc rdst and %1%S1, %0 */
618 #line 395 "rx-decode.opc"
619 int mx AU
= (op
[1] >> 6) & 0x03;
620 #line 395 "rx-decode.opc"
621 int ss AU
= op
[1] & 0x03;
622 #line 395 "rx-decode.opc"
623 int rsrc AU
= (op
[2] >> 4) & 0x0f;
624 #line 395 "rx-decode.opc"
625 int rdst AU
= op
[2] & 0x0f;
628 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
629 "/** 0000 0110 mx01 00ss rsrc rdst and %1%S1, %0 */",
630 op
[0], op
[1], op
[2]);
631 printf (" mx = 0x%x,", mx
);
632 printf (" ss = 0x%x,", ss
);
633 printf (" rsrc = 0x%x,", rsrc
);
634 printf (" rdst = 0x%x\n", rdst
);
636 SYNTAX("and %1%S1, %0");
637 #line 395 "rx-decode.opc"
638 ID(and); SPm(ss
, rsrc
, mx
); DR(rdst
); F__SZ_
;
646 switch (op
[2] & 0x00)
655 switch (op
[2] & 0x00)
664 switch (op
[2] & 0x00)
673 switch (op
[2] & 0x00)
678 /** 0000 0110 mx01 01ss rsrc rdst or %1%S1, %0 */
679 #line 413 "rx-decode.opc"
680 int mx AU
= (op
[1] >> 6) & 0x03;
681 #line 413 "rx-decode.opc"
682 int ss AU
= op
[1] & 0x03;
683 #line 413 "rx-decode.opc"
684 int rsrc AU
= (op
[2] >> 4) & 0x0f;
685 #line 413 "rx-decode.opc"
686 int rdst AU
= op
[2] & 0x0f;
689 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
690 "/** 0000 0110 mx01 01ss rsrc rdst or %1%S1, %0 */",
691 op
[0], op
[1], op
[2]);
692 printf (" mx = 0x%x,", mx
);
693 printf (" ss = 0x%x,", ss
);
694 printf (" rsrc = 0x%x,", rsrc
);
695 printf (" rdst = 0x%x\n", rdst
);
697 SYNTAX("or %1%S1, %0");
698 #line 413 "rx-decode.opc"
699 ID(or); SPm(ss
, rsrc
, mx
); DR(rdst
); F__SZ_
;
707 switch (op
[2] & 0x00)
716 switch (op
[2] & 0x00)
725 switch (op
[2] & 0x00)
734 switch (op
[2] & 0xff)
738 switch (op
[3] & 0x00)
743 /** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb %1%S1, %0 */
744 #line 531 "rx-decode.opc"
745 int mx AU
= (op
[1] >> 6) & 0x03;
746 #line 531 "rx-decode.opc"
747 int sp AU
= op
[1] & 0x03;
748 #line 531 "rx-decode.opc"
749 int rsrc AU
= (op
[3] >> 4) & 0x0f;
750 #line 531 "rx-decode.opc"
751 int rdst AU
= op
[3] & 0x0f;
754 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
755 "/** 0000 0110 mx10 00sp 0000 0000 rsrc rdst sbb %1%S1, %0 */",
756 op
[0], op
[1], op
[2], op
[3]);
757 printf (" mx = 0x%x,", mx
);
758 printf (" sp = 0x%x,", sp
);
759 printf (" rsrc = 0x%x,", rsrc
);
760 printf (" rdst = 0x%x\n", rdst
);
762 SYNTAX("sbb %1%S1, %0");
763 #line 531 "rx-decode.opc"
764 ID(sbb
); SPm(sp
, rsrc
, mx
); DR(rdst
); F_OSZC
;
766 /*----------------------------------------------------------------------*/
775 switch (op
[3] & 0x00)
780 /** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max %1%S1, %0 */
781 #line 560 "rx-decode.opc"
782 int mx AU
= (op
[1] >> 6) & 0x03;
783 #line 560 "rx-decode.opc"
784 int ss AU
= op
[1] & 0x03;
785 #line 560 "rx-decode.opc"
786 int rsrc AU
= (op
[3] >> 4) & 0x0f;
787 #line 560 "rx-decode.opc"
788 int rdst AU
= op
[3] & 0x0f;
791 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
792 "/** 0000 0110 mx10 00ss 0000 0100 rsrc rdst max %1%S1, %0 */",
793 op
[0], op
[1], op
[2], op
[3]);
794 printf (" mx = 0x%x,", mx
);
795 printf (" ss = 0x%x,", ss
);
796 printf (" rsrc = 0x%x,", rsrc
);
797 printf (" rdst = 0x%x\n", rdst
);
799 SYNTAX("max %1%S1, %0");
800 #line 560 "rx-decode.opc"
801 ID(max
); SPm(ss
, rsrc
, mx
); DR(rdst
);
803 /*----------------------------------------------------------------------*/
812 switch (op
[3] & 0x00)
817 /** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min %1%S1, %0 */
818 #line 572 "rx-decode.opc"
819 int mx AU
= (op
[1] >> 6) & 0x03;
820 #line 572 "rx-decode.opc"
821 int ss AU
= op
[1] & 0x03;
822 #line 572 "rx-decode.opc"
823 int rsrc AU
= (op
[3] >> 4) & 0x0f;
824 #line 572 "rx-decode.opc"
825 int rdst AU
= op
[3] & 0x0f;
828 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
829 "/** 0000 0110 mx10 00ss 0000 0101 rsrc rdst min %1%S1, %0 */",
830 op
[0], op
[1], op
[2], op
[3]);
831 printf (" mx = 0x%x,", mx
);
832 printf (" ss = 0x%x,", ss
);
833 printf (" rsrc = 0x%x,", rsrc
);
834 printf (" rdst = 0x%x\n", rdst
);
836 SYNTAX("min %1%S1, %0");
837 #line 572 "rx-decode.opc"
838 ID(min
); SPm(ss
, rsrc
, mx
); DR(rdst
);
840 /*----------------------------------------------------------------------*/
849 switch (op
[3] & 0x00)
854 /** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul %1%S1, %0 */
855 #line 602 "rx-decode.opc"
856 int mx AU
= (op
[1] >> 6) & 0x03;
857 #line 602 "rx-decode.opc"
858 int ss AU
= op
[1] & 0x03;
859 #line 602 "rx-decode.opc"
860 int rsrc AU
= (op
[3] >> 4) & 0x0f;
861 #line 602 "rx-decode.opc"
862 int rdst AU
= op
[3] & 0x0f;
865 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
866 "/** 0000 0110 mx10 00ss 0000 0110 rsrc rdst emul %1%S1, %0 */",
867 op
[0], op
[1], op
[2], op
[3]);
868 printf (" mx = 0x%x,", mx
);
869 printf (" ss = 0x%x,", ss
);
870 printf (" rsrc = 0x%x,", rsrc
);
871 printf (" rdst = 0x%x\n", rdst
);
873 SYNTAX("emul %1%S1, %0");
874 #line 602 "rx-decode.opc"
875 ID(emul
); SPm(ss
, rsrc
, mx
); DR(rdst
);
877 /*----------------------------------------------------------------------*/
886 switch (op
[3] & 0x00)
891 /** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu %1%S1, %0 */
892 #line 614 "rx-decode.opc"
893 int mx AU
= (op
[1] >> 6) & 0x03;
894 #line 614 "rx-decode.opc"
895 int ss AU
= op
[1] & 0x03;
896 #line 614 "rx-decode.opc"
897 int rsrc AU
= (op
[3] >> 4) & 0x0f;
898 #line 614 "rx-decode.opc"
899 int rdst AU
= op
[3] & 0x0f;
902 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
903 "/** 0000 0110 mx10 00ss 0000 0111 rsrc rdst emulu %1%S1, %0 */",
904 op
[0], op
[1], op
[2], op
[3]);
905 printf (" mx = 0x%x,", mx
);
906 printf (" ss = 0x%x,", ss
);
907 printf (" rsrc = 0x%x,", rsrc
);
908 printf (" rdst = 0x%x\n", rdst
);
910 SYNTAX("emulu %1%S1, %0");
911 #line 614 "rx-decode.opc"
912 ID(emulu
); SPm(ss
, rsrc
, mx
); DR(rdst
);
914 /*----------------------------------------------------------------------*/
923 switch (op
[3] & 0x00)
928 /** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div %1%S1, %0 */
929 #line 626 "rx-decode.opc"
930 int mx AU
= (op
[1] >> 6) & 0x03;
931 #line 626 "rx-decode.opc"
932 int ss AU
= op
[1] & 0x03;
933 #line 626 "rx-decode.opc"
934 int rsrc AU
= (op
[3] >> 4) & 0x0f;
935 #line 626 "rx-decode.opc"
936 int rdst AU
= op
[3] & 0x0f;
939 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
940 "/** 0000 0110 mx10 00ss 0000 1000 rsrc rdst div %1%S1, %0 */",
941 op
[0], op
[1], op
[2], op
[3]);
942 printf (" mx = 0x%x,", mx
);
943 printf (" ss = 0x%x,", ss
);
944 printf (" rsrc = 0x%x,", rsrc
);
945 printf (" rdst = 0x%x\n", rdst
);
947 SYNTAX("div %1%S1, %0");
948 #line 626 "rx-decode.opc"
949 ID(div
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_O___
;
951 /*----------------------------------------------------------------------*/
960 switch (op
[3] & 0x00)
965 /** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu %1%S1, %0 */
966 #line 638 "rx-decode.opc"
967 int mx AU
= (op
[1] >> 6) & 0x03;
968 #line 638 "rx-decode.opc"
969 int ss AU
= op
[1] & 0x03;
970 #line 638 "rx-decode.opc"
971 int rsrc AU
= (op
[3] >> 4) & 0x0f;
972 #line 638 "rx-decode.opc"
973 int rdst AU
= op
[3] & 0x0f;
976 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
977 "/** 0000 0110 mx10 00ss 0000 1001 rsrc rdst divu %1%S1, %0 */",
978 op
[0], op
[1], op
[2], op
[3]);
979 printf (" mx = 0x%x,", mx
);
980 printf (" ss = 0x%x,", ss
);
981 printf (" rsrc = 0x%x,", rsrc
);
982 printf (" rdst = 0x%x\n", rdst
);
984 SYNTAX("divu %1%S1, %0");
985 #line 638 "rx-decode.opc"
986 ID(divu
); SPm(ss
, rsrc
, mx
); DR(rdst
); F_O___
;
988 /*----------------------------------------------------------------------*/
997 switch (op
[3] & 0x00)
1002 /** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst %1%S1, %2 */
1003 #line 449 "rx-decode.opc"
1004 int mx AU
= (op
[1] >> 6) & 0x03;
1005 #line 449 "rx-decode.opc"
1006 int ss AU
= op
[1] & 0x03;
1007 #line 449 "rx-decode.opc"
1008 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1009 #line 449 "rx-decode.opc"
1010 int rdst AU
= op
[3] & 0x0f;
1013 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1014 "/** 0000 0110 mx10 00ss 0000 1100 rsrc rdst tst %1%S1, %2 */",
1015 op
[0], op
[1], op
[2], op
[3]);
1016 printf (" mx = 0x%x,", mx
);
1017 printf (" ss = 0x%x,", ss
);
1018 printf (" rsrc = 0x%x,", rsrc
);
1019 printf (" rdst = 0x%x\n", rdst
);
1021 SYNTAX("tst %1%S1, %2");
1022 #line 449 "rx-decode.opc"
1023 ID(and); SPm(ss
, rsrc
, mx
); S2R(rdst
); F__SZ_
;
1025 /*----------------------------------------------------------------------*/
1034 switch (op
[3] & 0x00)
1039 /** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor %1%S1, %0 */
1040 #line 428 "rx-decode.opc"
1041 int mx AU
= (op
[1] >> 6) & 0x03;
1042 #line 428 "rx-decode.opc"
1043 int ss AU
= op
[1] & 0x03;
1044 #line 428 "rx-decode.opc"
1045 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1046 #line 428 "rx-decode.opc"
1047 int rdst AU
= op
[3] & 0x0f;
1050 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1051 "/** 0000 0110 mx10 00ss 0000 1101 rsrc rdst xor %1%S1, %0 */",
1052 op
[0], op
[1], op
[2], op
[3]);
1053 printf (" mx = 0x%x,", mx
);
1054 printf (" ss = 0x%x,", ss
);
1055 printf (" rsrc = 0x%x,", rsrc
);
1056 printf (" rdst = 0x%x\n", rdst
);
1058 SYNTAX("xor %1%S1, %0");
1059 #line 428 "rx-decode.opc"
1060 ID(xor); SPm(ss
, rsrc
, mx
); DR(rdst
); F__SZ_
;
1062 /*----------------------------------------------------------------------*/
1071 switch (op
[3] & 0x00)
1076 /** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg %1%S1, %0 */
1077 #line 362 "rx-decode.opc"
1078 int mx AU
= (op
[1] >> 6) & 0x03;
1079 #line 362 "rx-decode.opc"
1080 int ss AU
= op
[1] & 0x03;
1081 #line 362 "rx-decode.opc"
1082 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1083 #line 362 "rx-decode.opc"
1084 int rdst AU
= op
[3] & 0x0f;
1087 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1088 "/** 0000 0110 mx10 00ss 0001 0000 rsrc rdst xchg %1%S1, %0 */",
1089 op
[0], op
[1], op
[2], op
[3]);
1090 printf (" mx = 0x%x,", mx
);
1091 printf (" ss = 0x%x,", ss
);
1092 printf (" rsrc = 0x%x,", rsrc
);
1093 printf (" rdst = 0x%x\n", rdst
);
1095 SYNTAX("xchg %1%S1, %0");
1096 #line 362 "rx-decode.opc"
1097 ID(xchg
); DR(rdst
); SPm(ss
, rsrc
, mx
);
1099 /*----------------------------------------------------------------------*/
1108 switch (op
[3] & 0x00)
1113 /** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof %1%S1, %0 */
1114 #line 867 "rx-decode.opc"
1115 int mx AU
= (op
[1] >> 6) & 0x03;
1116 #line 867 "rx-decode.opc"
1117 int sd AU
= op
[1] & 0x03;
1118 #line 867 "rx-decode.opc"
1119 int rsrc AU
= (op
[3] >> 4) & 0x0f;
1120 #line 867 "rx-decode.opc"
1121 int rdst AU
= op
[3] & 0x0f;
1124 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
1125 "/** 0000 0110 mx10 00sd 0001 0001 rsrc rdst itof %1%S1, %0 */",
1126 op
[0], op
[1], op
[2], op
[3]);
1127 printf (" mx = 0x%x,", mx
);
1128 printf (" sd = 0x%x,", sd
);
1129 printf (" rsrc = 0x%x,", rsrc
);
1130 printf (" rdst = 0x%x\n", rdst
);
1132 SYNTAX("itof %1%S1, %0");
1133 #line 867 "rx-decode.opc"
1134 ID(itof
); DR (rdst
); SPm(sd
, rsrc
, mx
); F__SZ_
;
1136 /*----------------------------------------------------------------------*/
1143 default: UNSUPPORTED(); break;
1148 switch (op
[2] & 0xff)
1152 switch (op
[3] & 0x00)
1155 goto op_semantics_7
;
1161 switch (op
[3] & 0x00)
1164 goto op_semantics_8
;
1170 switch (op
[3] & 0x00)
1173 goto op_semantics_9
;
1179 switch (op
[3] & 0x00)
1182 goto op_semantics_10
;
1188 switch (op
[3] & 0x00)
1191 goto op_semantics_11
;
1197 switch (op
[3] & 0x00)
1200 goto op_semantics_12
;
1206 switch (op
[3] & 0x00)
1209 goto op_semantics_13
;
1215 switch (op
[3] & 0x00)
1218 goto op_semantics_14
;
1224 switch (op
[3] & 0x00)
1227 goto op_semantics_15
;
1233 switch (op
[3] & 0x00)
1236 goto op_semantics_16
;
1242 switch (op
[3] & 0x00)
1245 goto op_semantics_17
;
1249 default: UNSUPPORTED(); break;
1254 switch (op
[2] & 0xff)
1258 switch (op
[3] & 0x00)
1261 goto op_semantics_7
;
1267 switch (op
[3] & 0x00)
1270 goto op_semantics_8
;
1276 switch (op
[3] & 0x00)
1279 goto op_semantics_9
;
1285 switch (op
[3] & 0x00)
1288 goto op_semantics_10
;
1294 switch (op
[3] & 0x00)
1297 goto op_semantics_11
;
1303 switch (op
[3] & 0x00)
1306 goto op_semantics_12
;
1312 switch (op
[3] & 0x00)
1315 goto op_semantics_13
;
1321 switch (op
[3] & 0x00)
1324 goto op_semantics_14
;
1330 switch (op
[3] & 0x00)
1333 goto op_semantics_15
;
1339 switch (op
[3] & 0x00)
1342 goto op_semantics_16
;
1348 switch (op
[3] & 0x00)
1351 goto op_semantics_17
;
1355 default: UNSUPPORTED(); break;
1360 switch (op
[2] & 0xff)
1364 switch (op
[3] & 0x00)
1367 goto op_semantics_7
;
1373 switch (op
[3] & 0x00)
1376 goto op_semantics_8
;
1382 switch (op
[3] & 0x00)
1385 goto op_semantics_9
;
1391 switch (op
[3] & 0x00)
1394 goto op_semantics_10
;
1400 switch (op
[3] & 0x00)
1403 goto op_semantics_11
;
1409 switch (op
[3] & 0x00)
1412 goto op_semantics_12
;
1418 switch (op
[3] & 0x00)
1421 goto op_semantics_13
;
1427 switch (op
[3] & 0x00)
1430 goto op_semantics_14
;
1436 switch (op
[3] & 0x00)
1439 goto op_semantics_15
;
1445 switch (op
[3] & 0x00)
1448 goto op_semantics_16
;
1454 switch (op
[3] & 0x00)
1457 goto op_semantics_17
;
1461 default: UNSUPPORTED(); break;
1466 switch (op
[2] & 0x00)
1469 goto op_semantics_1
;
1475 switch (op
[2] & 0x00)
1478 goto op_semantics_1
;
1484 switch (op
[2] & 0x00)
1487 goto op_semantics_1
;
1493 switch (op
[2] & 0x00)
1496 goto op_semantics_1
;
1502 switch (op
[2] & 0x00)
1505 goto op_semantics_2
;
1511 switch (op
[2] & 0x00)
1514 goto op_semantics_2
;
1520 switch (op
[2] & 0x00)
1523 goto op_semantics_2
;
1529 switch (op
[2] & 0x00)
1532 goto op_semantics_2
;
1538 switch (op
[2] & 0x00)
1541 goto op_semantics_3
;
1547 switch (op
[2] & 0x00)
1550 goto op_semantics_3
;
1556 switch (op
[2] & 0x00)
1559 goto op_semantics_3
;
1565 switch (op
[2] & 0x00)
1568 goto op_semantics_3
;
1574 switch (op
[2] & 0x00)
1577 goto op_semantics_4
;
1583 switch (op
[2] & 0x00)
1586 goto op_semantics_4
;
1592 switch (op
[2] & 0x00)
1595 goto op_semantics_4
;
1601 switch (op
[2] & 0x00)
1604 goto op_semantics_4
;
1610 switch (op
[2] & 0x00)
1613 goto op_semantics_5
;
1619 switch (op
[2] & 0x00)
1622 goto op_semantics_5
;
1628 switch (op
[2] & 0x00)
1631 goto op_semantics_5
;
1637 switch (op
[2] & 0x00)
1640 goto op_semantics_5
;
1646 switch (op
[2] & 0x00)
1649 goto op_semantics_6
;
1655 switch (op
[2] & 0x00)
1658 goto op_semantics_6
;
1664 switch (op
[2] & 0x00)
1667 goto op_semantics_6
;
1673 switch (op
[2] & 0x00)
1676 goto op_semantics_6
;
1682 switch (op
[2] & 0xff)
1686 switch (op
[3] & 0x00)
1689 goto op_semantics_7
;
1695 switch (op
[3] & 0x00)
1698 goto op_semantics_8
;
1704 switch (op
[3] & 0x00)
1707 goto op_semantics_9
;
1713 switch (op
[3] & 0x00)
1716 goto op_semantics_10
;
1722 switch (op
[3] & 0x00)
1725 goto op_semantics_11
;
1731 switch (op
[3] & 0x00)
1734 goto op_semantics_12
;
1740 switch (op
[3] & 0x00)
1743 goto op_semantics_13
;
1749 switch (op
[3] & 0x00)
1752 goto op_semantics_14
;
1758 switch (op
[3] & 0x00)
1761 goto op_semantics_15
;
1767 switch (op
[3] & 0x00)
1770 goto op_semantics_16
;
1776 switch (op
[3] & 0x00)
1779 goto op_semantics_17
;
1783 default: UNSUPPORTED(); break;
1788 switch (op
[2] & 0xff)
1792 switch (op
[3] & 0x00)
1795 goto op_semantics_7
;
1801 switch (op
[3] & 0x00)
1804 goto op_semantics_8
;
1810 switch (op
[3] & 0x00)
1813 goto op_semantics_9
;
1819 switch (op
[3] & 0x00)
1822 goto op_semantics_10
;
1828 switch (op
[3] & 0x00)
1831 goto op_semantics_11
;
1837 switch (op
[3] & 0x00)
1840 goto op_semantics_12
;
1846 switch (op
[3] & 0x00)
1849 goto op_semantics_13
;
1855 switch (op
[3] & 0x00)
1858 goto op_semantics_14
;
1864 switch (op
[3] & 0x00)
1867 goto op_semantics_15
;
1873 switch (op
[3] & 0x00)
1876 goto op_semantics_16
;
1882 switch (op
[3] & 0x00)
1885 goto op_semantics_17
;
1889 default: UNSUPPORTED(); break;
1894 switch (op
[2] & 0xff)
1898 switch (op
[3] & 0x00)
1901 goto op_semantics_7
;
1907 switch (op
[3] & 0x00)
1910 goto op_semantics_8
;
1916 switch (op
[3] & 0x00)
1919 goto op_semantics_9
;
1925 switch (op
[3] & 0x00)
1928 goto op_semantics_10
;
1934 switch (op
[3] & 0x00)
1937 goto op_semantics_11
;
1943 switch (op
[3] & 0x00)
1946 goto op_semantics_12
;
1952 switch (op
[3] & 0x00)
1955 goto op_semantics_13
;
1961 switch (op
[3] & 0x00)
1964 goto op_semantics_14
;
1970 switch (op
[3] & 0x00)
1973 goto op_semantics_15
;
1979 switch (op
[3] & 0x00)
1982 goto op_semantics_16
;
1988 switch (op
[3] & 0x00)
1991 goto op_semantics_17
;
1995 default: UNSUPPORTED(); break;
2000 switch (op
[2] & 0xff)
2004 switch (op
[3] & 0x00)
2007 goto op_semantics_7
;
2013 switch (op
[3] & 0x00)
2016 goto op_semantics_8
;
2022 switch (op
[3] & 0x00)
2025 goto op_semantics_9
;
2031 switch (op
[3] & 0x00)
2034 goto op_semantics_10
;
2040 switch (op
[3] & 0x00)
2043 goto op_semantics_11
;
2049 switch (op
[3] & 0x00)
2052 goto op_semantics_12
;
2058 switch (op
[3] & 0x00)
2061 goto op_semantics_13
;
2067 switch (op
[3] & 0x00)
2070 goto op_semantics_14
;
2076 switch (op
[3] & 0x00)
2079 goto op_semantics_15
;
2085 switch (op
[3] & 0x00)
2088 goto op_semantics_16
;
2094 switch (op
[3] & 0x00)
2097 goto op_semantics_17
;
2101 default: UNSUPPORTED(); break;
2106 switch (op
[2] & 0x00)
2109 goto op_semantics_1
;
2115 switch (op
[2] & 0x00)
2118 goto op_semantics_1
;
2124 switch (op
[2] & 0x00)
2127 goto op_semantics_1
;
2133 switch (op
[2] & 0x00)
2136 goto op_semantics_1
;
2142 switch (op
[2] & 0x00)
2145 goto op_semantics_2
;
2151 switch (op
[2] & 0x00)
2154 goto op_semantics_2
;
2160 switch (op
[2] & 0x00)
2163 goto op_semantics_2
;
2169 switch (op
[2] & 0x00)
2172 goto op_semantics_2
;
2178 switch (op
[2] & 0x00)
2181 goto op_semantics_3
;
2187 switch (op
[2] & 0x00)
2190 goto op_semantics_3
;
2196 switch (op
[2] & 0x00)
2199 goto op_semantics_3
;
2205 switch (op
[2] & 0x00)
2208 goto op_semantics_3
;
2214 switch (op
[2] & 0x00)
2217 goto op_semantics_4
;
2223 switch (op
[2] & 0x00)
2226 goto op_semantics_4
;
2232 switch (op
[2] & 0x00)
2235 goto op_semantics_4
;
2241 switch (op
[2] & 0x00)
2244 goto op_semantics_4
;
2250 switch (op
[2] & 0x00)
2253 goto op_semantics_5
;
2259 switch (op
[2] & 0x00)
2262 goto op_semantics_5
;
2268 switch (op
[2] & 0x00)
2271 goto op_semantics_5
;
2277 switch (op
[2] & 0x00)
2280 goto op_semantics_5
;
2286 switch (op
[2] & 0x00)
2289 goto op_semantics_6
;
2295 switch (op
[2] & 0x00)
2298 goto op_semantics_6
;
2304 switch (op
[2] & 0x00)
2307 goto op_semantics_6
;
2313 switch (op
[2] & 0x00)
2316 goto op_semantics_6
;
2322 switch (op
[2] & 0xff)
2326 switch (op
[3] & 0x00)
2329 goto op_semantics_7
;
2335 switch (op
[3] & 0x00)
2340 /** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc %1%S1, %0 */
2341 #line 470 "rx-decode.opc"
2342 int ss AU
= op
[1] & 0x03;
2343 #line 470 "rx-decode.opc"
2344 int rsrc AU
= (op
[3] >> 4) & 0x0f;
2345 #line 470 "rx-decode.opc"
2346 int rdst AU
= op
[3] & 0x0f;
2349 printf ("\033[33m%s\033[0m %02x %02x %02x %02x\n",
2350 "/** 0000 0110 1010 00ss 0000 0010 rsrc rdst adc %1%S1, %0 */",
2351 op
[0], op
[1], op
[2], op
[3]);
2352 printf (" ss = 0x%x,", ss
);
2353 printf (" rsrc = 0x%x,", rsrc
);
2354 printf (" rdst = 0x%x\n", rdst
);
2356 SYNTAX("adc %1%S1, %0");
2357 #line 470 "rx-decode.opc"
2358 ID(adc
); SPm(ss
, rsrc
, 2); DR(rdst
); F_OSZC
;
2360 /*----------------------------------------------------------------------*/
2369 switch (op
[3] & 0x00)
2372 goto op_semantics_8
;
2378 switch (op
[3] & 0x00)
2381 goto op_semantics_9
;
2387 switch (op
[3] & 0x00)
2390 goto op_semantics_10
;
2396 switch (op
[3] & 0x00)
2399 goto op_semantics_11
;
2405 switch (op
[3] & 0x00)
2408 goto op_semantics_12
;
2414 switch (op
[3] & 0x00)
2417 goto op_semantics_13
;
2423 switch (op
[3] & 0x00)
2426 goto op_semantics_14
;
2432 switch (op
[3] & 0x00)
2435 goto op_semantics_15
;
2441 switch (op
[3] & 0x00)
2444 goto op_semantics_16
;
2450 switch (op
[3] & 0x00)
2453 goto op_semantics_17
;
2457 default: UNSUPPORTED(); break;
2462 switch (op
[2] & 0xff)
2466 switch (op
[3] & 0x00)
2469 goto op_semantics_7
;
2475 switch (op
[3] & 0x00)
2478 goto op_semantics_18
;
2484 switch (op
[3] & 0x00)
2487 goto op_semantics_8
;
2493 switch (op
[3] & 0x00)
2496 goto op_semantics_9
;
2502 switch (op
[3] & 0x00)
2505 goto op_semantics_10
;
2511 switch (op
[3] & 0x00)
2514 goto op_semantics_11
;
2520 switch (op
[3] & 0x00)
2523 goto op_semantics_12
;
2529 switch (op
[3] & 0x00)
2532 goto op_semantics_13
;
2538 switch (op
[3] & 0x00)
2541 goto op_semantics_14
;
2547 switch (op
[3] & 0x00)
2550 goto op_semantics_15
;
2556 switch (op
[3] & 0x00)
2559 goto op_semantics_16
;
2565 switch (op
[3] & 0x00)
2568 goto op_semantics_17
;
2572 default: UNSUPPORTED(); break;
2577 switch (op
[2] & 0xff)
2581 switch (op
[3] & 0x00)
2584 goto op_semantics_7
;
2590 switch (op
[3] & 0x00)
2593 goto op_semantics_18
;
2599 switch (op
[3] & 0x00)
2602 goto op_semantics_8
;
2608 switch (op
[3] & 0x00)
2611 goto op_semantics_9
;
2617 switch (op
[3] & 0x00)
2620 goto op_semantics_10
;
2626 switch (op
[3] & 0x00)
2629 goto op_semantics_11
;
2635 switch (op
[3] & 0x00)
2638 goto op_semantics_12
;
2644 switch (op
[3] & 0x00)
2647 goto op_semantics_13
;
2653 switch (op
[3] & 0x00)
2656 goto op_semantics_14
;
2662 switch (op
[3] & 0x00)
2665 goto op_semantics_15
;
2671 switch (op
[3] & 0x00)
2674 goto op_semantics_16
;
2680 switch (op
[3] & 0x00)
2683 goto op_semantics_17
;
2687 default: UNSUPPORTED(); break;
2692 switch (op
[2] & 0xff)
2696 switch (op
[3] & 0x00)
2699 goto op_semantics_7
;
2705 switch (op
[3] & 0x00)
2708 goto op_semantics_18
;
2714 switch (op
[3] & 0x00)
2717 goto op_semantics_8
;
2723 switch (op
[3] & 0x00)
2726 goto op_semantics_9
;
2732 switch (op
[3] & 0x00)
2735 goto op_semantics_10
;
2741 switch (op
[3] & 0x00)
2744 goto op_semantics_11
;
2750 switch (op
[3] & 0x00)
2753 goto op_semantics_12
;
2759 switch (op
[3] & 0x00)
2762 goto op_semantics_13
;
2768 switch (op
[3] & 0x00)
2771 goto op_semantics_14
;
2777 switch (op
[3] & 0x00)
2780 goto op_semantics_15
;
2786 switch (op
[3] & 0x00)
2789 goto op_semantics_16
;
2795 switch (op
[3] & 0x00)
2798 goto op_semantics_17
;
2802 default: UNSUPPORTED(); break;
2807 switch (op
[2] & 0x00)
2810 goto op_semantics_1
;
2816 switch (op
[2] & 0x00)
2819 goto op_semantics_1
;
2825 switch (op
[2] & 0x00)
2828 goto op_semantics_1
;
2834 switch (op
[2] & 0x00)
2837 goto op_semantics_1
;
2843 switch (op
[2] & 0x00)
2846 goto op_semantics_2
;
2852 switch (op
[2] & 0x00)
2855 goto op_semantics_2
;
2861 switch (op
[2] & 0x00)
2864 goto op_semantics_2
;
2870 switch (op
[2] & 0x00)
2873 goto op_semantics_2
;
2879 switch (op
[2] & 0x00)
2882 goto op_semantics_3
;
2888 switch (op
[2] & 0x00)
2891 goto op_semantics_3
;
2897 switch (op
[2] & 0x00)
2900 goto op_semantics_3
;
2906 switch (op
[2] & 0x00)
2909 goto op_semantics_3
;
2915 switch (op
[2] & 0x00)
2918 goto op_semantics_4
;
2924 switch (op
[2] & 0x00)
2927 goto op_semantics_4
;
2933 switch (op
[2] & 0x00)
2936 goto op_semantics_4
;
2942 switch (op
[2] & 0x00)
2945 goto op_semantics_4
;
2951 switch (op
[2] & 0x00)
2954 goto op_semantics_5
;
2960 switch (op
[2] & 0x00)
2963 goto op_semantics_5
;
2969 switch (op
[2] & 0x00)
2972 goto op_semantics_5
;
2978 switch (op
[2] & 0x00)
2981 goto op_semantics_5
;
2987 switch (op
[2] & 0x00)
2990 goto op_semantics_6
;
2996 switch (op
[2] & 0x00)
2999 goto op_semantics_6
;
3005 switch (op
[2] & 0x00)
3008 goto op_semantics_6
;
3014 switch (op
[2] & 0x00)
3017 goto op_semantics_6
;
3023 switch (op
[2] & 0xff)
3027 switch (op
[3] & 0x00)
3030 goto op_semantics_7
;
3036 switch (op
[3] & 0x00)
3039 goto op_semantics_8
;
3045 switch (op
[3] & 0x00)
3048 goto op_semantics_9
;
3054 switch (op
[3] & 0x00)
3057 goto op_semantics_10
;
3063 switch (op
[3] & 0x00)
3066 goto op_semantics_11
;
3072 switch (op
[3] & 0x00)
3075 goto op_semantics_12
;
3081 switch (op
[3] & 0x00)
3084 goto op_semantics_13
;
3090 switch (op
[3] & 0x00)
3093 goto op_semantics_14
;
3099 switch (op
[3] & 0x00)
3102 goto op_semantics_15
;
3108 switch (op
[3] & 0x00)
3111 goto op_semantics_16
;
3117 switch (op
[3] & 0x00)
3120 goto op_semantics_17
;
3124 default: UNSUPPORTED(); break;
3129 switch (op
[2] & 0xff)
3133 switch (op
[3] & 0x00)
3136 goto op_semantics_7
;
3142 switch (op
[3] & 0x00)
3145 goto op_semantics_8
;
3151 switch (op
[3] & 0x00)
3154 goto op_semantics_9
;
3160 switch (op
[3] & 0x00)
3163 goto op_semantics_10
;
3169 switch (op
[3] & 0x00)
3172 goto op_semantics_11
;
3178 switch (op
[3] & 0x00)
3181 goto op_semantics_12
;
3187 switch (op
[3] & 0x00)
3190 goto op_semantics_13
;
3196 switch (op
[3] & 0x00)
3199 goto op_semantics_14
;
3205 switch (op
[3] & 0x00)
3208 goto op_semantics_15
;
3214 switch (op
[3] & 0x00)
3217 goto op_semantics_16
;
3223 switch (op
[3] & 0x00)
3226 goto op_semantics_17
;
3230 default: UNSUPPORTED(); break;
3235 switch (op
[2] & 0xff)
3239 switch (op
[3] & 0x00)
3242 goto op_semantics_7
;
3248 switch (op
[3] & 0x00)
3251 goto op_semantics_8
;
3257 switch (op
[3] & 0x00)
3260 goto op_semantics_9
;
3266 switch (op
[3] & 0x00)
3269 goto op_semantics_10
;
3275 switch (op
[3] & 0x00)
3278 goto op_semantics_11
;
3284 switch (op
[3] & 0x00)
3287 goto op_semantics_12
;
3293 switch (op
[3] & 0x00)
3296 goto op_semantics_13
;
3302 switch (op
[3] & 0x00)
3305 goto op_semantics_14
;
3311 switch (op
[3] & 0x00)
3314 goto op_semantics_15
;
3320 switch (op
[3] & 0x00)
3323 goto op_semantics_16
;
3329 switch (op
[3] & 0x00)
3332 goto op_semantics_17
;
3336 default: UNSUPPORTED(); break;
3341 switch (op
[2] & 0xff)
3345 switch (op
[3] & 0x00)
3348 goto op_semantics_7
;
3354 switch (op
[3] & 0x00)
3357 goto op_semantics_8
;
3363 switch (op
[3] & 0x00)
3366 goto op_semantics_9
;
3372 switch (op
[3] & 0x00)
3375 goto op_semantics_10
;
3381 switch (op
[3] & 0x00)
3384 goto op_semantics_11
;
3390 switch (op
[3] & 0x00)
3393 goto op_semantics_12
;
3399 switch (op
[3] & 0x00)
3402 goto op_semantics_13
;
3408 switch (op
[3] & 0x00)
3411 goto op_semantics_14
;
3417 switch (op
[3] & 0x00)
3420 goto op_semantics_15
;
3426 switch (op
[3] & 0x00)
3429 goto op_semantics_16
;
3435 switch (op
[3] & 0x00)
3438 goto op_semantics_17
;
3442 default: UNSUPPORTED(); break;
3445 default: UNSUPPORTED(); break;
3457 /** 0000 1dsp bra.s %a0 */
3458 #line 713 "rx-decode.opc"
3459 int dsp AU
= op
[0] & 0x07;
3462 printf ("\033[33m%s\033[0m %02x\n",
3463 "/** 0000 1dsp bra.s %a0 */",
3465 printf (" dsp = 0x%x\n", dsp
);
3467 SYNTAX("bra.s %a0");
3468 #line 713 "rx-decode.opc"
3469 ID(branch
); DC(pc
+ dsp3map
[dsp
]);
3490 /** 0001 n dsp b%1.s %a0 */
3491 #line 703 "rx-decode.opc"
3492 int n AU
= (op
[0] >> 3) & 0x01;
3493 #line 703 "rx-decode.opc"
3494 int dsp AU
= op
[0] & 0x07;
3497 printf ("\033[33m%s\033[0m %02x\n",
3498 "/** 0001 n dsp b%1.s %a0 */",
3500 printf (" n = 0x%x,", n
);
3501 printf (" dsp = 0x%x\n", dsp
);
3503 SYNTAX("b%1.s %a0");
3504 #line 703 "rx-decode.opc"
3505 ID(branch
); Scc(n
); DC(pc
+ dsp3map
[dsp
]);
3525 /** 0010 cond b%1.b %a0 */
3526 #line 706 "rx-decode.opc"
3527 int cond AU
= op
[0] & 0x0f;
3530 printf ("\033[33m%s\033[0m %02x\n",
3531 "/** 0010 cond b%1.b %a0 */",
3533 printf (" cond = 0x%x\n", cond
);
3535 SYNTAX("b%1.b %a0");
3536 #line 706 "rx-decode.opc"
3537 ID(branch
); Scc(cond
); DC(pc
+ IMMex (1));
3543 /** 0010 1110 bra.b %a0 */
3546 printf ("\033[33m%s\033[0m %02x\n",
3547 "/** 0010 1110 bra.b %a0 */",
3550 SYNTAX("bra.b %a0");
3551 #line 716 "rx-decode.opc"
3552 ID(branch
); DC(pc
+ IMMex(1));
3558 /** 0011 1000 bra.w %a0 */
3561 printf ("\033[33m%s\033[0m %02x\n",
3562 "/** 0011 1000 bra.w %a0 */",
3565 SYNTAX("bra.w %a0");
3566 #line 719 "rx-decode.opc"
3567 ID(branch
); DC(pc
+ IMMex(2));
3573 /** 0011 1001 bsr.w %a0 */
3576 printf ("\033[33m%s\033[0m %02x\n",
3577 "/** 0011 1001 bsr.w %a0 */",
3580 SYNTAX("bsr.w %a0");
3581 #line 735 "rx-decode.opc"
3582 ID(jsr
); DC(pc
+ IMMex(2));
3589 /** 0011 101c b%1.w %a0 */
3590 #line 709 "rx-decode.opc"
3591 int c AU
= op
[0] & 0x01;
3594 printf ("\033[33m%s\033[0m %02x\n",
3595 "/** 0011 101c b%1.w %a0 */",
3597 printf (" c = 0x%x\n", c
);
3599 SYNTAX("b%1.w %a0");
3600 #line 709 "rx-decode.opc"
3601 ID(branch
); Scc(c
); DC(pc
+ IMMex (2));
3608 switch (op
[1] & 0x00)
3613 /** 0011 11sz d dst sppp mov%s #%1, %0 */
3614 #line 283 "rx-decode.opc"
3615 int sz AU
= op
[0] & 0x03;
3616 #line 283 "rx-decode.opc"
3617 int d AU
= (op
[1] >> 7) & 0x01;
3618 #line 283 "rx-decode.opc"
3619 int dst AU
= (op
[1] >> 4) & 0x07;
3620 #line 283 "rx-decode.opc"
3621 int sppp AU
= op
[1] & 0x0f;
3624 printf ("\033[33m%s\033[0m %02x %02x\n",
3625 "/** 0011 11sz d dst sppp mov%s #%1, %0 */",
3627 printf (" sz = 0x%x,", sz
);
3628 printf (" d = 0x%x,", d
);
3629 printf (" dst = 0x%x,", dst
);
3630 printf (" sppp = 0x%x\n", sppp
);
3632 SYNTAX("mov%s #%1, %0");
3633 #line 283 "rx-decode.opc"
3634 ID(mov
); sBWL (sz
); DIs(dst
, d
*16+sppp
, sz
); SC(IMM(1)); F_____
;
3642 switch (op
[1] & 0x00)
3645 goto op_semantics_19
;
3651 switch (op
[1] & 0x00)
3654 goto op_semantics_19
;
3660 switch (op
[1] & 0x00)
3664 /** 0011 1111 rega regb rtsd #%1, %2-%0 */
3665 #line 380 "rx-decode.opc"
3666 int rega AU
= (op
[1] >> 4) & 0x0f;
3667 #line 380 "rx-decode.opc"
3668 int regb AU
= op
[1] & 0x0f;
3671 printf ("\033[33m%s\033[0m %02x %02x\n",
3672 "/** 0011 1111 rega regb rtsd #%1, %2-%0 */",
3674 printf (" rega = 0x%x,", rega
);
3675 printf (" regb = 0x%x\n", regb
);
3677 SYNTAX("rtsd #%1, %2-%0");
3678 #line 380 "rx-decode.opc"
3679 ID(rtsd
); SC(IMM(1) * 4); S2R(rega
); DR(regb
);
3681 /*----------------------------------------------------------------------*/
3690 switch (op
[1] & 0x00)
3695 /** 0100 00ss rsrc rdst sub %2%S2, %1 */
3696 #line 515 "rx-decode.opc"
3697 int ss AU
= op
[0] & 0x03;
3698 #line 515 "rx-decode.opc"
3699 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3700 #line 515 "rx-decode.opc"
3701 int rdst AU
= op
[1] & 0x0f;
3704 printf ("\033[33m%s\033[0m %02x %02x\n",
3705 "/** 0100 00ss rsrc rdst sub %2%S2, %1 */",
3707 printf (" ss = 0x%x,", ss
);
3708 printf (" rsrc = 0x%x,", rsrc
);
3709 printf (" rdst = 0x%x\n", rdst
);
3711 SYNTAX("sub %2%S2, %1");
3712 #line 515 "rx-decode.opc"
3713 ID(sub
); S2P(ss
, rsrc
); SR(rdst
); DR(rdst
); F_OSZC
;
3721 switch (op
[1] & 0x00)
3724 goto op_semantics_20
;
3730 switch (op
[1] & 0x00)
3733 goto op_semantics_20
;
3739 switch (op
[1] & 0x00)
3742 goto op_semantics_20
;
3748 switch (op
[1] & 0x00)
3753 /** 0100 01ss rsrc rdst cmp %2%S2, %1 */
3754 #line 503 "rx-decode.opc"
3755 int ss AU
= op
[0] & 0x03;
3756 #line 503 "rx-decode.opc"
3757 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3758 #line 503 "rx-decode.opc"
3759 int rdst AU
= op
[1] & 0x0f;
3762 printf ("\033[33m%s\033[0m %02x %02x\n",
3763 "/** 0100 01ss rsrc rdst cmp %2%S2, %1 */",
3765 printf (" ss = 0x%x,", ss
);
3766 printf (" rsrc = 0x%x,", rsrc
);
3767 printf (" rdst = 0x%x\n", rdst
);
3769 SYNTAX("cmp %2%S2, %1");
3770 #line 503 "rx-decode.opc"
3771 ID(sub
); S2P(ss
, rsrc
); SR(rdst
); F_OSZC
;
3779 switch (op
[1] & 0x00)
3782 goto op_semantics_21
;
3788 switch (op
[1] & 0x00)
3791 goto op_semantics_21
;
3797 switch (op
[1] & 0x00)
3800 goto op_semantics_21
;
3806 switch (op
[1] & 0x00)
3811 /** 0100 10ss rsrc rdst add %1%S1, %0 */
3812 #line 479 "rx-decode.opc"
3813 int ss AU
= op
[0] & 0x03;
3814 #line 479 "rx-decode.opc"
3815 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3816 #line 479 "rx-decode.opc"
3817 int rdst AU
= op
[1] & 0x0f;
3820 printf ("\033[33m%s\033[0m %02x %02x\n",
3821 "/** 0100 10ss rsrc rdst add %1%S1, %0 */",
3823 printf (" ss = 0x%x,", ss
);
3824 printf (" rsrc = 0x%x,", rsrc
);
3825 printf (" rdst = 0x%x\n", rdst
);
3827 SYNTAX("add %1%S1, %0");
3828 #line 479 "rx-decode.opc"
3829 ID(add
); SP(ss
, rsrc
); DR(rdst
); F_OSZC
;
3837 switch (op
[1] & 0x00)
3840 goto op_semantics_22
;
3846 switch (op
[1] & 0x00)
3849 goto op_semantics_22
;
3855 switch (op
[1] & 0x00)
3858 goto op_semantics_22
;
3864 switch (op
[1] & 0x00)
3869 /** 0100 11ss rsrc rdst mul %1%S1, %0 */
3870 #line 584 "rx-decode.opc"
3871 int ss AU
= op
[0] & 0x03;
3872 #line 584 "rx-decode.opc"
3873 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3874 #line 584 "rx-decode.opc"
3875 int rdst AU
= op
[1] & 0x0f;
3878 printf ("\033[33m%s\033[0m %02x %02x\n",
3879 "/** 0100 11ss rsrc rdst mul %1%S1, %0 */",
3881 printf (" ss = 0x%x,", ss
);
3882 printf (" rsrc = 0x%x,", rsrc
);
3883 printf (" rdst = 0x%x\n", rdst
);
3885 SYNTAX("mul %1%S1, %0");
3886 #line 584 "rx-decode.opc"
3887 ID(mul
); SP(ss
, rsrc
); DR(rdst
); F_____
;
3895 switch (op
[1] & 0x00)
3898 goto op_semantics_23
;
3904 switch (op
[1] & 0x00)
3907 goto op_semantics_23
;
3913 switch (op
[1] & 0x00)
3916 goto op_semantics_23
;
3922 switch (op
[1] & 0x00)
3927 /** 0101 00ss rsrc rdst and %1%S1, %0 */
3928 #line 392 "rx-decode.opc"
3929 int ss AU
= op
[0] & 0x03;
3930 #line 392 "rx-decode.opc"
3931 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3932 #line 392 "rx-decode.opc"
3933 int rdst AU
= op
[1] & 0x0f;
3936 printf ("\033[33m%s\033[0m %02x %02x\n",
3937 "/** 0101 00ss rsrc rdst and %1%S1, %0 */",
3939 printf (" ss = 0x%x,", ss
);
3940 printf (" rsrc = 0x%x,", rsrc
);
3941 printf (" rdst = 0x%x\n", rdst
);
3943 SYNTAX("and %1%S1, %0");
3944 #line 392 "rx-decode.opc"
3945 ID(and); SP(ss
, rsrc
); DR(rdst
); F__SZ_
;
3953 switch (op
[1] & 0x00)
3956 goto op_semantics_24
;
3962 switch (op
[1] & 0x00)
3965 goto op_semantics_24
;
3971 switch (op
[1] & 0x00)
3974 goto op_semantics_24
;
3980 switch (op
[1] & 0x00)
3985 /** 0101 01ss rsrc rdst or %1%S1, %0 */
3986 #line 410 "rx-decode.opc"
3987 int ss AU
= op
[0] & 0x03;
3988 #line 410 "rx-decode.opc"
3989 int rsrc AU
= (op
[1] >> 4) & 0x0f;
3990 #line 410 "rx-decode.opc"
3991 int rdst AU
= op
[1] & 0x0f;
3994 printf ("\033[33m%s\033[0m %02x %02x\n",
3995 "/** 0101 01ss rsrc rdst or %1%S1, %0 */",
3997 printf (" ss = 0x%x,", ss
);
3998 printf (" rsrc = 0x%x,", rsrc
);
3999 printf (" rdst = 0x%x\n", rdst
);
4001 SYNTAX("or %1%S1, %0");
4002 #line 410 "rx-decode.opc"
4003 ID(or); SP(ss
, rsrc
); DR(rdst
); F__SZ_
;
4011 switch (op
[1] & 0x00)
4014 goto op_semantics_25
;
4020 switch (op
[1] & 0x00)
4023 goto op_semantics_25
;
4029 switch (op
[1] & 0x00)
4032 goto op_semantics_25
;
4038 switch (op
[1] & 0x00)
4043 /** 0101 1 s ss rsrc rdst movu%s %1, %0 */
4044 #line 331 "rx-decode.opc"
4045 int s AU
= (op
[0] >> 2) & 0x01;
4046 #line 331 "rx-decode.opc"
4047 int ss AU
= op
[0] & 0x03;
4048 #line 331 "rx-decode.opc"
4049 int rsrc AU
= (op
[1] >> 4) & 0x0f;
4050 #line 331 "rx-decode.opc"
4051 int rdst AU
= op
[1] & 0x0f;
4054 printf ("\033[33m%s\033[0m %02x %02x\n",
4055 "/** 0101 1 s ss rsrc rdst movu%s %1, %0 */",
4057 printf (" s = 0x%x,", s
);
4058 printf (" ss = 0x%x,", ss
);
4059 printf (" rsrc = 0x%x,", rsrc
);
4060 printf (" rdst = 0x%x\n", rdst
);
4062 SYNTAX("movu%s %1, %0");
4063 #line 331 "rx-decode.opc"
4064 ID(mov
); uBWL(s
); SD(ss
, rsrc
, s
); DR(rdst
); F_____
;
4072 switch (op
[1] & 0x00)
4075 goto op_semantics_26
;
4081 switch (op
[1] & 0x00)
4084 goto op_semantics_26
;
4090 switch (op
[1] & 0x00)
4093 goto op_semantics_26
;
4099 switch (op
[1] & 0x00)
4102 goto op_semantics_26
;
4108 switch (op
[1] & 0x00)
4111 goto op_semantics_26
;
4117 switch (op
[1] & 0x00)
4120 goto op_semantics_26
;
4126 switch (op
[1] & 0x00)
4129 goto op_semantics_26
;
4135 switch (op
[1] & 0x00)
4139 /** 0110 0000 immm rdst sub #%2, %0 */
4140 #line 512 "rx-decode.opc"
4141 int immm AU
= (op
[1] >> 4) & 0x0f;
4142 #line 512 "rx-decode.opc"
4143 int rdst AU
= op
[1] & 0x0f;
4146 printf ("\033[33m%s\033[0m %02x %02x\n",
4147 "/** 0110 0000 immm rdst sub #%2, %0 */",
4149 printf (" immm = 0x%x,", immm
);
4150 printf (" rdst = 0x%x\n", rdst
);
4152 SYNTAX("sub #%2, %0");
4153 #line 512 "rx-decode.opc"
4154 ID(sub
); S2C(immm
); SR(rdst
); DR(rdst
); F_OSZC
;
4162 switch (op
[1] & 0x00)
4166 /** 0110 0001 immm rdst cmp #%2, %1 */
4167 #line 494 "rx-decode.opc"
4168 int immm AU
= (op
[1] >> 4) & 0x0f;
4169 #line 494 "rx-decode.opc"
4170 int rdst AU
= op
[1] & 0x0f;
4173 printf ("\033[33m%s\033[0m %02x %02x\n",
4174 "/** 0110 0001 immm rdst cmp #%2, %1 */",
4176 printf (" immm = 0x%x,", immm
);
4177 printf (" rdst = 0x%x\n", rdst
);
4179 SYNTAX("cmp #%2, %1");
4180 #line 494 "rx-decode.opc"
4181 ID(sub
); S2C(immm
); SR(rdst
); F_OSZC
;
4189 switch (op
[1] & 0x00)
4193 /** 0110 0010 immm rdst add #%1, %0 */
4194 #line 476 "rx-decode.opc"
4195 int immm AU
= (op
[1] >> 4) & 0x0f;
4196 #line 476 "rx-decode.opc"
4197 int rdst AU
= op
[1] & 0x0f;
4200 printf ("\033[33m%s\033[0m %02x %02x\n",
4201 "/** 0110 0010 immm rdst add #%1, %0 */",
4203 printf (" immm = 0x%x,", immm
);
4204 printf (" rdst = 0x%x\n", rdst
);
4206 SYNTAX("add #%1, %0");
4207 #line 476 "rx-decode.opc"
4208 ID(add
); SC(immm
); DR(rdst
); F_OSZC
;
4216 switch (op
[1] & 0x00)
4220 /** 0110 0011 immm rdst mul #%1, %0 */
4221 #line 578 "rx-decode.opc"
4222 int immm AU
= (op
[1] >> 4) & 0x0f;
4223 #line 578 "rx-decode.opc"
4224 int rdst AU
= op
[1] & 0x0f;
4227 printf ("\033[33m%s\033[0m %02x %02x\n",
4228 "/** 0110 0011 immm rdst mul #%1, %0 */",
4230 printf (" immm = 0x%x,", immm
);
4231 printf (" rdst = 0x%x\n", rdst
);
4233 SYNTAX("mul #%1, %0");
4234 #line 578 "rx-decode.opc"
4235 ID(mul
); DR(rdst
); SC(immm
); F_____
;
4243 switch (op
[1] & 0x00)
4247 /** 0110 0100 immm rdst and #%1, %0 */
4248 #line 386 "rx-decode.opc"
4249 int immm AU
= (op
[1] >> 4) & 0x0f;
4250 #line 386 "rx-decode.opc"
4251 int rdst AU
= op
[1] & 0x0f;
4254 printf ("\033[33m%s\033[0m %02x %02x\n",
4255 "/** 0110 0100 immm rdst and #%1, %0 */",
4257 printf (" immm = 0x%x,", immm
);
4258 printf (" rdst = 0x%x\n", rdst
);
4260 SYNTAX("and #%1, %0");
4261 #line 386 "rx-decode.opc"
4262 ID(and); SC(immm
); DR(rdst
); F__SZ_
;
4270 switch (op
[1] & 0x00)
4274 /** 0110 0101 immm rdst or #%1, %0 */
4275 #line 404 "rx-decode.opc"
4276 int immm AU
= (op
[1] >> 4) & 0x0f;
4277 #line 404 "rx-decode.opc"
4278 int rdst AU
= op
[1] & 0x0f;
4281 printf ("\033[33m%s\033[0m %02x %02x\n",
4282 "/** 0110 0101 immm rdst or #%1, %0 */",
4284 printf (" immm = 0x%x,", immm
);
4285 printf (" rdst = 0x%x\n", rdst
);
4287 SYNTAX("or #%1, %0");
4288 #line 404 "rx-decode.opc"
4289 ID(or); SC(immm
); DR(rdst
); F__SZ_
;
4297 switch (op
[1] & 0x00)
4301 /** 0110 0110 immm rdst mov%s #%1, %0 */
4302 #line 280 "rx-decode.opc"
4303 int immm AU
= (op
[1] >> 4) & 0x0f;
4304 #line 280 "rx-decode.opc"
4305 int rdst AU
= op
[1] & 0x0f;
4308 printf ("\033[33m%s\033[0m %02x %02x\n",
4309 "/** 0110 0110 immm rdst mov%s #%1, %0 */",
4311 printf (" immm = 0x%x,", immm
);
4312 printf (" rdst = 0x%x\n", rdst
);
4314 SYNTAX("mov%s #%1, %0");
4315 #line 280 "rx-decode.opc"
4316 ID(mov
); DR(rdst
); SC(immm
); F_____
;
4324 /** 0110 0111 rtsd #%1 */
4327 printf ("\033[33m%s\033[0m %02x\n",
4328 "/** 0110 0111 rtsd #%1 */",
4332 #line 377 "rx-decode.opc"
4333 ID(rtsd
); SC(IMM(1) * 4);
4339 switch (op
[1] & 0x00)
4344 /** 0110 100i mmmm rdst shlr #%2, %0 */
4345 #line 664 "rx-decode.opc"
4346 int i AU
= op
[0] & 0x01;
4347 #line 664 "rx-decode.opc"
4348 int mmmm AU
= (op
[1] >> 4) & 0x0f;
4349 #line 664 "rx-decode.opc"
4350 int rdst AU
= op
[1] & 0x0f;
4353 printf ("\033[33m%s\033[0m %02x %02x\n",
4354 "/** 0110 100i mmmm rdst shlr #%2, %0 */",
4356 printf (" i = 0x%x,", i
);
4357 printf (" mmmm = 0x%x,", mmmm
);
4358 printf (" rdst = 0x%x\n", rdst
);
4360 SYNTAX("shlr #%2, %0");
4361 #line 664 "rx-decode.opc"
4362 ID(shlr
); S2C(i
*16+mmmm
); SR(rdst
); DR(rdst
); F__SZC
;
4370 switch (op
[1] & 0x00)
4373 goto op_semantics_27
;
4379 switch (op
[1] & 0x00)
4384 /** 0110 101i mmmm rdst shar #%2, %0 */
4385 #line 654 "rx-decode.opc"
4386 int i AU
= op
[0] & 0x01;
4387 #line 654 "rx-decode.opc"
4388 int mmmm AU
= (op
[1] >> 4) & 0x0f;
4389 #line 654 "rx-decode.opc"
4390 int rdst AU
= op
[1] & 0x0f;
4393 printf ("\033[33m%s\033[0m %02x %02x\n",
4394 "/** 0110 101i mmmm rdst shar #%2, %0 */",
4396 printf (" i = 0x%x,", i
);
4397 printf (" mmmm = 0x%x,", mmmm
);
4398 printf (" rdst = 0x%x\n", rdst
);
4400 SYNTAX("shar #%2, %0");
4401 #line 654 "rx-decode.opc"
4402 ID(shar
); S2C(i
*16+mmmm
); SR(rdst
); DR(rdst
); F_0SZC
;
4410 switch (op
[1] & 0x00)
4413 goto op_semantics_28
;
4419 switch (op
[1] & 0x00)
4424 /** 0110 110i mmmm rdst shll #%2, %0 */
4425 #line 644 "rx-decode.opc"
4426 int i AU
= op
[0] & 0x01;
4427 #line 644 "rx-decode.opc"
4428 int mmmm AU
= (op
[1] >> 4) & 0x0f;
4429 #line 644 "rx-decode.opc"
4430 int rdst AU
= op
[1] & 0x0f;
4433 printf ("\033[33m%s\033[0m %02x %02x\n",
4434 "/** 0110 110i mmmm rdst shll #%2, %0 */",
4436 printf (" i = 0x%x,", i
);
4437 printf (" mmmm = 0x%x,", mmmm
);
4438 printf (" rdst = 0x%x\n", rdst
);
4440 SYNTAX("shll #%2, %0");
4441 #line 644 "rx-decode.opc"
4442 ID(shll
); S2C(i
*16+mmmm
); SR(rdst
); DR(rdst
); F_OSZC
;
4450 switch (op
[1] & 0x00)
4453 goto op_semantics_29
;
4459 switch (op
[1] & 0x00)
4463 /** 0110 1110 dsta dstb pushm %1-%2 */
4464 #line 344 "rx-decode.opc"
4465 int dsta AU
= (op
[1] >> 4) & 0x0f;
4466 #line 344 "rx-decode.opc"
4467 int dstb AU
= op
[1] & 0x0f;
4470 printf ("\033[33m%s\033[0m %02x %02x\n",
4471 "/** 0110 1110 dsta dstb pushm %1-%2 */",
4473 printf (" dsta = 0x%x,", dsta
);
4474 printf (" dstb = 0x%x\n", dstb
);
4476 SYNTAX("pushm %1-%2");
4477 #line 344 "rx-decode.opc"
4478 ID(pushm
); SR(dsta
); S2R(dstb
); F_____
;
4486 switch (op
[1] & 0x00)
4490 /** 0110 1111 dsta dstb popm %1-%2 */
4491 #line 341 "rx-decode.opc"
4492 int dsta AU
= (op
[1] >> 4) & 0x0f;
4493 #line 341 "rx-decode.opc"
4494 int dstb AU
= op
[1] & 0x0f;
4497 printf ("\033[33m%s\033[0m %02x %02x\n",
4498 "/** 0110 1111 dsta dstb popm %1-%2 */",
4500 printf (" dsta = 0x%x,", dsta
);
4501 printf (" dstb = 0x%x\n", dstb
);
4503 SYNTAX("popm %1-%2");
4504 #line 341 "rx-decode.opc"
4505 ID(popm
); SR(dsta
); S2R(dstb
); F_____
;
4513 switch (op
[1] & 0x00)
4518 /** 0111 00im rsrc rdst add #%1, %2, %0 */
4519 #line 485 "rx-decode.opc"
4520 int im AU
= op
[0] & 0x03;
4521 #line 485 "rx-decode.opc"
4522 int rsrc AU
= (op
[1] >> 4) & 0x0f;
4523 #line 485 "rx-decode.opc"
4524 int rdst AU
= op
[1] & 0x0f;
4527 printf ("\033[33m%s\033[0m %02x %02x\n",
4528 "/** 0111 00im rsrc rdst add #%1, %2, %0 */",
4530 printf (" im = 0x%x,", im
);
4531 printf (" rsrc = 0x%x,", rsrc
);
4532 printf (" rdst = 0x%x\n", rdst
);
4534 SYNTAX("add #%1, %2, %0");
4535 #line 485 "rx-decode.opc"
4536 ID(add
); SC(IMMex(im
)); S2R(rsrc
); DR(rdst
); F_OSZC
;
4544 switch (op
[1] & 0x00)
4547 goto op_semantics_30
;
4553 switch (op
[1] & 0x00)
4556 goto op_semantics_30
;
4562 switch (op
[1] & 0x00)
4565 goto op_semantics_30
;
4571 switch (op
[1] & 0xf0)
4576 /** 0111 01im 0000 rsrc cmp #%2, %1%S1 */
4577 #line 497 "rx-decode.opc"
4578 int im AU
= op
[0] & 0x03;
4579 #line 497 "rx-decode.opc"
4580 int rsrc AU
= op
[1] & 0x0f;
4583 printf ("\033[33m%s\033[0m %02x %02x\n",
4584 "/** 0111 01im 0000 rsrc cmp #%2, %1%S1 */",
4586 printf (" im = 0x%x,", im
);
4587 printf (" rsrc = 0x%x\n", rsrc
);
4589 SYNTAX("cmp #%2, %1%S1");
4590 #line 497 "rx-decode.opc"
4591 ID(sub
); SR(rsrc
); S2C(IMMex(im
)); F_OSZC
;
4598 /** 0111 01im 0001rdst mul #%1, %0 */
4599 #line 581 "rx-decode.opc"
4600 int im AU
= op
[0] & 0x03;
4601 #line 581 "rx-decode.opc"
4602 int rdst AU
= op
[1] & 0x0f;
4605 printf ("\033[33m%s\033[0m %02x %02x\n",
4606 "/** 0111 01im 0001rdst mul #%1, %0 */",
4608 printf (" im = 0x%x,", im
);
4609 printf (" rdst = 0x%x\n", rdst
);
4611 SYNTAX("mul #%1, %0");
4612 #line 581 "rx-decode.opc"
4613 ID(mul
); DR(rdst
); SC(IMMex(im
)); F_____
;
4620 /** 0111 01im 0010 rdst and #%1, %0 */
4621 #line 389 "rx-decode.opc"
4622 int im AU
= op
[0] & 0x03;
4623 #line 389 "rx-decode.opc"
4624 int rdst AU
= op
[1] & 0x0f;
4627 printf ("\033[33m%s\033[0m %02x %02x\n",
4628 "/** 0111 01im 0010 rdst and #%1, %0 */",
4630 printf (" im = 0x%x,", im
);
4631 printf (" rdst = 0x%x\n", rdst
);
4633 SYNTAX("and #%1, %0");
4634 #line 389 "rx-decode.opc"
4635 ID(and); SC(IMMex(im
)); DR(rdst
); F__SZ_
;
4642 /** 0111 01im 0011 rdst or #%1, %0 */
4643 #line 407 "rx-decode.opc"
4644 int im AU
= op
[0] & 0x03;
4645 #line 407 "rx-decode.opc"
4646 int rdst AU
= op
[1] & 0x0f;
4649 printf ("\033[33m%s\033[0m %02x %02x\n",
4650 "/** 0111 01im 0011 rdst or #%1, %0 */",
4652 printf (" im = 0x%x,", im
);
4653 printf (" rdst = 0x%x\n", rdst
);
4655 SYNTAX("or #%1, %0");
4656 #line 407 "rx-decode.opc"
4657 ID(or); SC(IMMex(im
)); DR(rdst
); F__SZ_
;
4661 default: UNSUPPORTED(); break;
4666 switch (op
[1] & 0xff)
4684 goto op_semantics_31
;
4702 goto op_semantics_32
;
4720 goto op_semantics_33
;
4738 goto op_semantics_34
;
4757 /** 0111 0101 0100 rdst mov%s #%1, %0 */
4758 #line 261 "rx-decode.opc"
4759 int rdst AU
= op
[1] & 0x0f;
4762 printf ("\033[33m%s\033[0m %02x %02x\n",
4763 "/** 0111 0101 0100 rdst mov%s #%1, %0 */",
4765 printf (" rdst = 0x%x\n", rdst
);
4767 SYNTAX("mov%s #%1, %0");
4768 #line 261 "rx-decode.opc"
4769 ID(mov
); DR(rdst
); SC(IMM (1)); F_____
;
4790 /** 0111 0101 0101 rsrc cmp #%2, %1 */
4791 #line 500 "rx-decode.opc"
4792 int rsrc AU
= op
[1] & 0x0f;
4795 printf ("\033[33m%s\033[0m %02x %02x\n",
4796 "/** 0111 0101 0101 rsrc cmp #%2, %1 */",
4798 printf (" rsrc = 0x%x\n", rsrc
);
4800 SYNTAX("cmp #%2, %1");
4801 #line 500 "rx-decode.opc"
4802 ID(sub
); SR(rsrc
); S2C(IMM(1)); F_OSZC
;
4808 /** 0111 0101 0110 0000 int #%1 */
4811 printf ("\033[33m%s\033[0m %02x %02x\n",
4812 "/** 0111 0101 0110 0000 int #%1 */",
4816 #line 961 "rx-decode.opc"
4817 ID(int); SC(IMM(1));
4823 switch (op
[2] & 0xf0)
4827 /** 0111 0101 0111 0000 0000 immm mvtipl #%1 */
4828 #line 928 "rx-decode.opc"
4829 int immm AU
= op
[2] & 0x0f;
4832 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
4833 "/** 0111 0101 0111 0000 0000 immm mvtipl #%1 */",
4834 op
[0], op
[1], op
[2]);
4835 printf (" immm = 0x%x\n", immm
);
4837 SYNTAX("mvtipl #%1");
4838 #line 928 "rx-decode.opc"
4839 ID(mvtipl
); SC(immm
);
4843 default: UNSUPPORTED(); break;
4846 default: UNSUPPORTED(); break;
4851 switch (op
[1] & 0xf0)
4854 goto op_semantics_31
;
4857 goto op_semantics_32
;
4860 goto op_semantics_33
;
4863 goto op_semantics_34
;
4865 default: UNSUPPORTED(); break;
4870 switch (op
[1] & 0xf0)
4873 goto op_semantics_31
;
4876 goto op_semantics_32
;
4879 goto op_semantics_33
;
4882 goto op_semantics_34
;
4884 default: UNSUPPORTED(); break;
4889 switch (op
[1] & 0x00)
4894 /** 0111 100b ittt rdst bset #%1, %0 */
4895 #line 879 "rx-decode.opc"
4896 int b AU
= op
[0] & 0x01;
4897 #line 879 "rx-decode.opc"
4898 int ittt AU
= (op
[1] >> 4) & 0x0f;
4899 #line 879 "rx-decode.opc"
4900 int rdst AU
= op
[1] & 0x0f;
4903 printf ("\033[33m%s\033[0m %02x %02x\n",
4904 "/** 0111 100b ittt rdst bset #%1, %0 */",
4906 printf (" b = 0x%x,", b
);
4907 printf (" ittt = 0x%x,", ittt
);
4908 printf (" rdst = 0x%x\n", rdst
);
4910 SYNTAX("bset #%1, %0");
4911 #line 879 "rx-decode.opc"
4912 ID(bset
); BWL(LSIZE
); SC(b
*16+ittt
); DR(rdst
); F_____
;
4921 switch (op
[1] & 0x00)
4924 goto op_semantics_35
;
4930 switch (op
[1] & 0x00)
4935 /** 0111 101b ittt rdst bclr #%1, %0 */
4936 #line 889 "rx-decode.opc"
4937 int b AU
= op
[0] & 0x01;
4938 #line 889 "rx-decode.opc"
4939 int ittt AU
= (op
[1] >> 4) & 0x0f;
4940 #line 889 "rx-decode.opc"
4941 int rdst AU
= op
[1] & 0x0f;
4944 printf ("\033[33m%s\033[0m %02x %02x\n",
4945 "/** 0111 101b ittt rdst bclr #%1, %0 */",
4947 printf (" b = 0x%x,", b
);
4948 printf (" ittt = 0x%x,", ittt
);
4949 printf (" rdst = 0x%x\n", rdst
);
4951 SYNTAX("bclr #%1, %0");
4952 #line 889 "rx-decode.opc"
4953 ID(bclr
); BWL(LSIZE
); SC(b
*16+ittt
); DR(rdst
); F_____
;
4962 switch (op
[1] & 0x00)
4965 goto op_semantics_36
;
4971 switch (op
[1] & 0x00)
4976 /** 0111 110b ittt rdst btst #%2, %1 */
4977 #line 899 "rx-decode.opc"
4978 int b AU
= op
[0] & 0x01;
4979 #line 899 "rx-decode.opc"
4980 int ittt AU
= (op
[1] >> 4) & 0x0f;
4981 #line 899 "rx-decode.opc"
4982 int rdst AU
= op
[1] & 0x0f;
4985 printf ("\033[33m%s\033[0m %02x %02x\n",
4986 "/** 0111 110b ittt rdst btst #%2, %1 */",
4988 printf (" b = 0x%x,", b
);
4989 printf (" ittt = 0x%x,", ittt
);
4990 printf (" rdst = 0x%x\n", rdst
);
4992 SYNTAX("btst #%2, %1");
4993 #line 899 "rx-decode.opc"
4994 ID(btst
); BWL(LSIZE
); S2C(b
*16+ittt
); SR(rdst
); F___ZC
;
5003 switch (op
[1] & 0x00)
5006 goto op_semantics_37
;
5012 switch (op
[1] & 0xf0)
5016 /** 0111 1110 0000 rdst not %0 */
5017 #line 434 "rx-decode.opc"
5018 int rdst AU
= op
[1] & 0x0f;
5021 printf ("\033[33m%s\033[0m %02x %02x\n",
5022 "/** 0111 1110 0000 rdst not %0 */",
5024 printf (" rdst = 0x%x\n", rdst
);
5027 #line 434 "rx-decode.opc"
5028 ID(xor); DR(rdst
); SR(rdst
); S2C(~0); F__SZ_
;
5034 /** 0111 1110 0001 rdst neg %0 */
5035 #line 455 "rx-decode.opc"
5036 int rdst AU
= op
[1] & 0x0f;
5039 printf ("\033[33m%s\033[0m %02x %02x\n",
5040 "/** 0111 1110 0001 rdst neg %0 */",
5042 printf (" rdst = 0x%x\n", rdst
);
5045 #line 455 "rx-decode.opc"
5046 ID(sub
); DR(rdst
); SC(0); S2R(rdst
); F_OSZC
;
5052 /** 0111 1110 0010 rdst abs %0 */
5053 #line 537 "rx-decode.opc"
5054 int rdst AU
= op
[1] & 0x0f;
5057 printf ("\033[33m%s\033[0m %02x %02x\n",
5058 "/** 0111 1110 0010 rdst abs %0 */",
5060 printf (" rdst = 0x%x\n", rdst
);
5063 #line 537 "rx-decode.opc"
5064 ID(abs
); DR(rdst
); SR(rdst
); F_OSZ_
;
5070 /** 0111 1110 0011 rdst sat %0 */
5071 #line 819 "rx-decode.opc"
5072 int rdst AU
= op
[1] & 0x0f;
5075 printf ("\033[33m%s\033[0m %02x %02x\n",
5076 "/** 0111 1110 0011 rdst sat %0 */",
5078 printf (" rdst = 0x%x\n", rdst
);
5081 #line 819 "rx-decode.opc"
5088 /** 0111 1110 0100 rdst rorc %0 */
5089 #line 679 "rx-decode.opc"
5090 int rdst AU
= op
[1] & 0x0f;
5093 printf ("\033[33m%s\033[0m %02x %02x\n",
5094 "/** 0111 1110 0100 rdst rorc %0 */",
5096 printf (" rdst = 0x%x\n", rdst
);
5099 #line 679 "rx-decode.opc"
5100 ID(rorc
); DR(rdst
); F__SZC
;
5106 /** 0111 1110 0101 rdst rolc %0 */
5107 #line 676 "rx-decode.opc"
5108 int rdst AU
= op
[1] & 0x0f;
5111 printf ("\033[33m%s\033[0m %02x %02x\n",
5112 "/** 0111 1110 0101 rdst rolc %0 */",
5114 printf (" rdst = 0x%x\n", rdst
);
5117 #line 676 "rx-decode.opc"
5118 ID(rolc
); DR(rdst
); F__SZC
;
5126 /** 0111 1110 10sz rsrc push%s %1 */
5127 #line 350 "rx-decode.opc"
5128 int sz AU
= (op
[1] >> 4) & 0x03;
5129 #line 350 "rx-decode.opc"
5130 int rsrc AU
= op
[1] & 0x0f;
5133 printf ("\033[33m%s\033[0m %02x %02x\n",
5134 "/** 0111 1110 10sz rsrc push%s %1 */",
5136 printf (" sz = 0x%x,", sz
);
5137 printf (" rsrc = 0x%x\n", rsrc
);
5139 SYNTAX("push%s %1");
5140 #line 350 "rx-decode.opc"
5141 ID(mov
); BWL(sz
); OP(0, RX_Operand_Predec
, 0, 0); SR(rsrc
); F_____
;
5147 /** 0111 1110 1011 rdst pop %0 */
5148 #line 347 "rx-decode.opc"
5149 int rdst AU
= op
[1] & 0x0f;
5152 printf ("\033[33m%s\033[0m %02x %02x\n",
5153 "/** 0111 1110 1011 rdst pop %0 */",
5155 printf (" rdst = 0x%x\n", rdst
);
5158 #line 347 "rx-decode.opc"
5159 ID(mov
); OP(1, RX_Operand_Postinc
, 0, 0); DR(rdst
); F_____
;
5166 /** 0111 1110 110 crsrc pushc %1 */
5167 #line 934 "rx-decode.opc"
5168 int crsrc AU
= op
[1] & 0x1f;
5171 printf ("\033[33m%s\033[0m %02x %02x\n",
5172 "/** 0111 1110 110 crsrc pushc %1 */",
5174 printf (" crsrc = 0x%x\n", crsrc
);
5177 #line 934 "rx-decode.opc"
5178 ID(mov
); OP(0, RX_Operand_Predec
, 0, 0); SR(crsrc
+ 16);
5185 /** 0111 1110 111 crdst popc %0 */
5186 #line 931 "rx-decode.opc"
5187 int crdst AU
= op
[1] & 0x1f;
5190 printf ("\033[33m%s\033[0m %02x %02x\n",
5191 "/** 0111 1110 111 crdst popc %0 */",
5193 printf (" crdst = 0x%x\n", crdst
);
5196 #line 931 "rx-decode.opc"
5197 ID(mov
); OP(1, RX_Operand_Postinc
, 0, 0); DR(crdst
+ 16);
5201 default: UNSUPPORTED(); break;
5206 switch (op
[1] & 0xff)
5225 /** 0111 1111 0000 rsrc jmp %0 */
5226 #line 729 "rx-decode.opc"
5227 int rsrc AU
= op
[1] & 0x0f;
5230 printf ("\033[33m%s\033[0m %02x %02x\n",
5231 "/** 0111 1111 0000 rsrc jmp %0 */",
5233 printf (" rsrc = 0x%x\n", rsrc
);
5236 #line 729 "rx-decode.opc"
5237 ID(branch
); DR(rsrc
);
5258 /** 0111 1111 0001 rsrc jsr %0 */
5259 #line 732 "rx-decode.opc"
5260 int rsrc AU
= op
[1] & 0x0f;
5263 printf ("\033[33m%s\033[0m %02x %02x\n",
5264 "/** 0111 1111 0001 rsrc jsr %0 */",
5266 printf (" rsrc = 0x%x\n", rsrc
);
5269 #line 732 "rx-decode.opc"
5291 /** 0111 1111 0100 rsrc bra.l %0 */
5292 #line 725 "rx-decode.opc"
5293 int rsrc AU
= op
[1] & 0x0f;
5296 printf ("\033[33m%s\033[0m %02x %02x\n",
5297 "/** 0111 1111 0100 rsrc bra.l %0 */",
5299 printf (" rsrc = 0x%x\n", rsrc
);
5302 #line 725 "rx-decode.opc"
5303 ID(branchrel
); DR(rsrc
);
5325 /** 0111 1111 0101 rsrc bsr.l %0 */
5326 #line 741 "rx-decode.opc"
5327 int rsrc AU
= op
[1] & 0x0f;
5330 printf ("\033[33m%s\033[0m %02x %02x\n",
5331 "/** 0111 1111 0101 rsrc bsr.l %0 */",
5333 printf (" rsrc = 0x%x\n", rsrc
);
5336 #line 741 "rx-decode.opc"
5337 ID(jsrrel
); DR(rsrc
);
5345 /** 0111 1111 1000 00sz suntil%s */
5346 #line 765 "rx-decode.opc"
5347 int sz AU
= op
[1] & 0x03;
5350 printf ("\033[33m%s\033[0m %02x %02x\n",
5351 "/** 0111 1111 1000 00sz suntil%s */",
5353 printf (" sz = 0x%x\n", sz
);
5356 #line 765 "rx-decode.opc"
5357 ID(suntil
); BWL(sz
); F___ZC
;
5363 /** 0111 1111 1000 0011 scmpu */
5366 printf ("\033[33m%s\033[0m %02x %02x\n",
5367 "/** 0111 1111 1000 0011 scmpu */",
5371 #line 756 "rx-decode.opc"
5380 /** 0111 1111 1000 01sz swhile%s */
5381 #line 768 "rx-decode.opc"
5382 int sz AU
= op
[1] & 0x03;
5385 printf ("\033[33m%s\033[0m %02x %02x\n",
5386 "/** 0111 1111 1000 01sz swhile%s */",
5388 printf (" sz = 0x%x\n", sz
);
5391 #line 768 "rx-decode.opc"
5392 ID(swhile
); BWL(sz
); F___ZC
;
5398 /** 0111 1111 1000 0111 smovu */
5401 printf ("\033[33m%s\033[0m %02x %02x\n",
5402 "/** 0111 1111 1000 0111 smovu */",
5406 #line 759 "rx-decode.opc"
5415 /** 0111 1111 1000 10sz sstr%s */
5416 #line 774 "rx-decode.opc"
5417 int sz AU
= op
[1] & 0x03;
5420 printf ("\033[33m%s\033[0m %02x %02x\n",
5421 "/** 0111 1111 1000 10sz sstr%s */",
5423 printf (" sz = 0x%x\n", sz
);
5426 #line 774 "rx-decode.opc"
5429 /*----------------------------------------------------------------------*/
5436 /** 0111 1111 1000 1011 smovb */
5439 printf ("\033[33m%s\033[0m %02x %02x\n",
5440 "/** 0111 1111 1000 1011 smovb */",
5444 #line 762 "rx-decode.opc"
5453 /** 0111 1111 1000 11sz rmpa%s */
5454 #line 780 "rx-decode.opc"
5455 int sz AU
= op
[1] & 0x03;
5458 printf ("\033[33m%s\033[0m %02x %02x\n",
5459 "/** 0111 1111 1000 11sz rmpa%s */",
5461 printf (" sz = 0x%x\n", sz
);
5464 #line 780 "rx-decode.opc"
5465 ID(rmpa
); BWL(sz
); F_OS__
;
5467 /*----------------------------------------------------------------------*/
5474 /** 0111 1111 1000 1111 smovf */
5477 printf ("\033[33m%s\033[0m %02x %02x\n",
5478 "/** 0111 1111 1000 1111 smovf */",
5482 #line 771 "rx-decode.opc"
5489 /** 0111 1111 1001 0011 satr */
5492 printf ("\033[33m%s\033[0m %02x %02x\n",
5493 "/** 0111 1111 1001 0011 satr */",
5497 #line 822 "rx-decode.opc"
5500 /*----------------------------------------------------------------------*/
5507 /** 0111 1111 1001 0100 rtfi */
5510 printf ("\033[33m%s\033[0m %02x %02x\n",
5511 "/** 0111 1111 1001 0100 rtfi */",
5515 #line 949 "rx-decode.opc"
5522 /** 0111 1111 1001 0101 rte */
5525 printf ("\033[33m%s\033[0m %02x %02x\n",
5526 "/** 0111 1111 1001 0101 rte */",
5530 #line 952 "rx-decode.opc"
5537 /** 0111 1111 1001 0110 wait */
5540 printf ("\033[33m%s\033[0m %02x %02x\n",
5541 "/** 0111 1111 1001 0110 wait */",
5545 #line 964 "rx-decode.opc"
5548 /*----------------------------------------------------------------------*/
5570 /** 0111 1111 1010 rdst setpsw %0 */
5571 #line 925 "rx-decode.opc"
5572 int rdst AU
= op
[1] & 0x0f;
5575 printf ("\033[33m%s\033[0m %02x %02x\n",
5576 "/** 0111 1111 1010 rdst setpsw %0 */",
5578 printf (" rdst = 0x%x\n", rdst
);
5580 SYNTAX("setpsw %0");
5581 #line 925 "rx-decode.opc"
5582 ID(setpsw
); DF(rdst
);
5603 /** 0111 1111 1011 rdst clrpsw %0 */
5604 #line 922 "rx-decode.opc"
5605 int rdst AU
= op
[1] & 0x0f;
5608 printf ("\033[33m%s\033[0m %02x %02x\n",
5609 "/** 0111 1111 1011 rdst clrpsw %0 */",
5611 printf (" rdst = 0x%x\n", rdst
);
5613 SYNTAX("clrpsw %0");
5614 #line 922 "rx-decode.opc"
5615 ID(clrpsw
); DF(rdst
);
5619 default: UNSUPPORTED(); break;
5624 switch (op
[1] & 0x00)
5629 /** 10sz 0dsp a dst b src mov%s %1, %0 */
5630 #line 308 "rx-decode.opc"
5631 int sz AU
= (op
[0] >> 4) & 0x03;
5632 #line 308 "rx-decode.opc"
5633 int dsp AU
= op
[0] & 0x07;
5634 #line 308 "rx-decode.opc"
5635 int a AU
= (op
[1] >> 7) & 0x01;
5636 #line 308 "rx-decode.opc"
5637 int dst AU
= (op
[1] >> 4) & 0x07;
5638 #line 308 "rx-decode.opc"
5639 int b AU
= (op
[1] >> 3) & 0x01;
5640 #line 308 "rx-decode.opc"
5641 int src AU
= op
[1] & 0x07;
5644 printf ("\033[33m%s\033[0m %02x %02x\n",
5645 "/** 10sz 0dsp a dst b src mov%s %1, %0 */",
5647 printf (" sz = 0x%x,", sz
);
5648 printf (" dsp = 0x%x,", dsp
);
5649 printf (" a = 0x%x,", a
);
5650 printf (" dst = 0x%x,", dst
);
5651 printf (" b = 0x%x,", b
);
5652 printf (" src = 0x%x\n", src
);
5654 SYNTAX("mov%s %1, %0");
5655 #line 308 "rx-decode.opc"
5656 ID(mov
); sBWL(sz
); DIs(dst
, dsp
*4+a
*2+b
, sz
); SR(src
); F_____
;
5664 switch (op
[1] & 0x00)
5667 goto op_semantics_38
;
5673 switch (op
[1] & 0x00)
5676 goto op_semantics_38
;
5682 switch (op
[1] & 0x00)
5685 goto op_semantics_38
;
5691 switch (op
[1] & 0x00)
5694 goto op_semantics_38
;
5700 switch (op
[1] & 0x00)
5703 goto op_semantics_38
;
5709 switch (op
[1] & 0x00)
5712 goto op_semantics_38
;
5718 switch (op
[1] & 0x00)
5721 goto op_semantics_38
;
5727 switch (op
[1] & 0x00)
5732 /** 10sz 1dsp a src b dst mov%s %1, %0 */
5733 #line 305 "rx-decode.opc"
5734 int sz AU
= (op
[0] >> 4) & 0x03;
5735 #line 305 "rx-decode.opc"
5736 int dsp AU
= op
[0] & 0x07;
5737 #line 305 "rx-decode.opc"
5738 int a AU
= (op
[1] >> 7) & 0x01;
5739 #line 305 "rx-decode.opc"
5740 int src AU
= (op
[1] >> 4) & 0x07;
5741 #line 305 "rx-decode.opc"
5742 int b AU
= (op
[1] >> 3) & 0x01;
5743 #line 305 "rx-decode.opc"
5744 int dst AU
= op
[1] & 0x07;
5747 printf ("\033[33m%s\033[0m %02x %02x\n",
5748 "/** 10sz 1dsp a src b dst mov%s %1, %0 */",
5750 printf (" sz = 0x%x,", sz
);
5751 printf (" dsp = 0x%x,", dsp
);
5752 printf (" a = 0x%x,", a
);
5753 printf (" src = 0x%x,", src
);
5754 printf (" b = 0x%x,", b
);
5755 printf (" dst = 0x%x\n", dst
);
5757 SYNTAX("mov%s %1, %0");
5758 #line 305 "rx-decode.opc"
5759 ID(mov
); sBWL(sz
); DR(dst
); SIs(src
, dsp
*4+a
*2+b
, sz
); F_____
;
5767 switch (op
[1] & 0x00)
5770 goto op_semantics_39
;
5776 switch (op
[1] & 0x00)
5779 goto op_semantics_39
;
5785 switch (op
[1] & 0x00)
5788 goto op_semantics_39
;
5794 switch (op
[1] & 0x00)
5797 goto op_semantics_39
;
5803 switch (op
[1] & 0x00)
5806 goto op_semantics_39
;
5812 switch (op
[1] & 0x00)
5815 goto op_semantics_39
;
5821 switch (op
[1] & 0x00)
5824 goto op_semantics_39
;
5830 switch (op
[1] & 0x00)
5833 goto op_semantics_38
;
5839 switch (op
[1] & 0x00)
5842 goto op_semantics_38
;
5848 switch (op
[1] & 0x00)
5851 goto op_semantics_38
;
5857 switch (op
[1] & 0x00)
5860 goto op_semantics_38
;
5866 switch (op
[1] & 0x00)
5869 goto op_semantics_38
;
5875 switch (op
[1] & 0x00)
5878 goto op_semantics_38
;
5884 switch (op
[1] & 0x00)
5887 goto op_semantics_38
;
5893 switch (op
[1] & 0x00)
5896 goto op_semantics_38
;
5902 switch (op
[1] & 0x00)
5905 goto op_semantics_39
;
5911 switch (op
[1] & 0x00)
5914 goto op_semantics_39
;
5920 switch (op
[1] & 0x00)
5923 goto op_semantics_39
;
5929 switch (op
[1] & 0x00)
5932 goto op_semantics_39
;
5938 switch (op
[1] & 0x00)
5941 goto op_semantics_39
;
5947 switch (op
[1] & 0x00)
5950 goto op_semantics_39
;
5956 switch (op
[1] & 0x00)
5959 goto op_semantics_39
;
5965 switch (op
[1] & 0x00)
5968 goto op_semantics_39
;
5974 switch (op
[1] & 0x00)
5977 goto op_semantics_38
;
5983 switch (op
[1] & 0x00)
5986 goto op_semantics_38
;
5992 switch (op
[1] & 0x00)
5995 goto op_semantics_38
;
6001 switch (op
[1] & 0x00)
6004 goto op_semantics_38
;
6010 switch (op
[1] & 0x00)
6013 goto op_semantics_38
;
6019 switch (op
[1] & 0x00)
6022 goto op_semantics_38
;
6028 switch (op
[1] & 0x00)
6031 goto op_semantics_38
;
6037 switch (op
[1] & 0x00)
6040 goto op_semantics_38
;
6046 switch (op
[1] & 0x00)
6049 goto op_semantics_39
;
6055 switch (op
[1] & 0x00)
6058 goto op_semantics_39
;
6064 switch (op
[1] & 0x00)
6067 goto op_semantics_39
;
6073 switch (op
[1] & 0x00)
6076 goto op_semantics_39
;
6082 switch (op
[1] & 0x00)
6085 goto op_semantics_39
;
6091 switch (op
[1] & 0x00)
6094 goto op_semantics_39
;
6100 switch (op
[1] & 0x00)
6103 goto op_semantics_39
;
6109 switch (op
[1] & 0x00)
6112 goto op_semantics_39
;
6118 switch (op
[1] & 0x00)
6123 /** 1011 w dsp a src b dst movu%s %1, %0 */
6124 #line 328 "rx-decode.opc"
6125 int w AU
= (op
[0] >> 3) & 0x01;
6126 #line 328 "rx-decode.opc"
6127 int dsp AU
= op
[0] & 0x07;
6128 #line 328 "rx-decode.opc"
6129 int a AU
= (op
[1] >> 7) & 0x01;
6130 #line 328 "rx-decode.opc"
6131 int src AU
= (op
[1] >> 4) & 0x07;
6132 #line 328 "rx-decode.opc"
6133 int b AU
= (op
[1] >> 3) & 0x01;
6134 #line 328 "rx-decode.opc"
6135 int dst AU
= op
[1] & 0x07;
6138 printf ("\033[33m%s\033[0m %02x %02x\n",
6139 "/** 1011 w dsp a src b dst movu%s %1, %0 */",
6141 printf (" w = 0x%x,", w
);
6142 printf (" dsp = 0x%x,", dsp
);
6143 printf (" a = 0x%x,", a
);
6144 printf (" src = 0x%x,", src
);
6145 printf (" b = 0x%x,", b
);
6146 printf (" dst = 0x%x\n", dst
);
6148 SYNTAX("movu%s %1, %0");
6149 #line 328 "rx-decode.opc"
6150 ID(mov
); uBWL(w
); DR(dst
); SIs(src
, dsp
*4+a
*2+b
, w
); F_____
;
6158 switch (op
[1] & 0x00)
6161 goto op_semantics_40
;
6167 switch (op
[1] & 0x00)
6170 goto op_semantics_40
;
6176 switch (op
[1] & 0x00)
6179 goto op_semantics_40
;
6185 switch (op
[1] & 0x00)
6188 goto op_semantics_40
;
6194 switch (op
[1] & 0x00)
6197 goto op_semantics_40
;
6203 switch (op
[1] & 0x00)
6206 goto op_semantics_40
;
6212 switch (op
[1] & 0x00)
6215 goto op_semantics_40
;
6221 switch (op
[1] & 0x00)
6224 goto op_semantics_40
;
6230 switch (op
[1] & 0x00)
6233 goto op_semantics_40
;
6239 switch (op
[1] & 0x00)
6242 goto op_semantics_40
;
6248 switch (op
[1] & 0x00)
6251 goto op_semantics_40
;
6257 switch (op
[1] & 0x00)
6260 goto op_semantics_40
;
6266 switch (op
[1] & 0x00)
6269 goto op_semantics_40
;
6275 switch (op
[1] & 0x00)
6278 goto op_semantics_40
;
6284 switch (op
[1] & 0x00)
6287 goto op_semantics_40
;
6293 switch (op
[1] & 0x00)
6298 /** 11sz sd ss rsrc rdst mov%s %1, %0 */
6299 #line 286 "rx-decode.opc"
6300 int sz AU
= (op
[0] >> 4) & 0x03;
6301 #line 286 "rx-decode.opc"
6302 int sd AU
= (op
[0] >> 2) & 0x03;
6303 #line 286 "rx-decode.opc"
6304 int ss AU
= op
[0] & 0x03;
6305 #line 286 "rx-decode.opc"
6306 int rsrc AU
= (op
[1] >> 4) & 0x0f;
6307 #line 286 "rx-decode.opc"
6308 int rdst AU
= op
[1] & 0x0f;
6311 printf ("\033[33m%s\033[0m %02x %02x\n",
6312 "/** 11sz sd ss rsrc rdst mov%s %1, %0 */",
6314 printf (" sz = 0x%x,", sz
);
6315 printf (" sd = 0x%x,", sd
);
6316 printf (" ss = 0x%x,", ss
);
6317 printf (" rsrc = 0x%x,", rsrc
);
6318 printf (" rdst = 0x%x\n", rdst
);
6320 SYNTAX("mov%s %1, %0");
6321 #line 286 "rx-decode.opc"
6322 if (ss
== 3 && sz
== 2 && rsrc
== 0 && rdst
== 0)
6329 ID(mov
); sBWL(sz
); F_____
;
6330 if ((ss
== 3) && (sd
!= 3))
6332 SD(ss
, rdst
, sz
); DD(sd
, rsrc
, sz
);
6336 SD(ss
, rsrc
, sz
); DD(sd
, rdst
, sz
);
6346 switch (op
[1] & 0x00)
6349 goto op_semantics_41
;
6355 switch (op
[1] & 0x00)
6358 goto op_semantics_41
;
6364 switch (op
[1] & 0x00)
6367 goto op_semantics_41
;
6373 switch (op
[1] & 0x00)
6376 goto op_semantics_41
;
6382 switch (op
[1] & 0x00)
6385 goto op_semantics_41
;
6391 switch (op
[1] & 0x00)
6394 goto op_semantics_41
;
6400 switch (op
[1] & 0x00)
6403 goto op_semantics_41
;
6409 switch (op
[1] & 0x00)
6412 goto op_semantics_41
;
6418 switch (op
[1] & 0x00)
6421 goto op_semantics_41
;
6427 switch (op
[1] & 0x00)
6430 goto op_semantics_41
;
6436 switch (op
[1] & 0x00)
6439 goto op_semantics_41
;
6445 switch (op
[1] & 0x00)
6448 goto op_semantics_41
;
6454 switch (op
[1] & 0x00)
6457 goto op_semantics_41
;
6463 switch (op
[1] & 0x00)
6466 goto op_semantics_41
;
6472 switch (op
[1] & 0x00)
6475 goto op_semantics_41
;
6481 switch (op
[1] & 0x00)
6484 goto op_semantics_41
;
6490 switch (op
[1] & 0x00)
6493 goto op_semantics_41
;
6499 switch (op
[1] & 0x00)
6502 goto op_semantics_41
;
6508 switch (op
[1] & 0x00)
6511 goto op_semantics_41
;
6517 switch (op
[1] & 0x00)
6520 goto op_semantics_41
;
6526 switch (op
[1] & 0x00)
6529 goto op_semantics_41
;
6535 switch (op
[1] & 0x00)
6538 goto op_semantics_41
;
6544 switch (op
[1] & 0x00)
6547 goto op_semantics_41
;
6553 switch (op
[1] & 0x00)
6556 goto op_semantics_41
;
6562 switch (op
[1] & 0x00)
6565 goto op_semantics_41
;
6571 switch (op
[1] & 0x00)
6574 goto op_semantics_41
;
6580 switch (op
[1] & 0x00)
6583 goto op_semantics_41
;
6589 switch (op
[1] & 0x00)
6592 goto op_semantics_41
;
6598 switch (op
[1] & 0x00)
6601 goto op_semantics_41
;
6607 switch (op
[1] & 0x00)
6610 goto op_semantics_41
;
6616 switch (op
[1] & 0x00)
6619 goto op_semantics_41
;
6625 switch (op
[1] & 0x00)
6628 goto op_semantics_41
;
6634 switch (op
[1] & 0x00)
6637 goto op_semantics_41
;
6643 switch (op
[1] & 0x00)
6646 goto op_semantics_41
;
6652 switch (op
[1] & 0x00)
6655 goto op_semantics_41
;
6661 switch (op
[1] & 0x00)
6664 goto op_semantics_41
;
6670 switch (op
[1] & 0x00)
6673 goto op_semantics_41
;
6679 switch (op
[1] & 0x00)
6682 goto op_semantics_41
;
6688 switch (op
[1] & 0x00)
6691 goto op_semantics_41
;
6697 switch (op
[1] & 0x00)
6700 goto op_semantics_41
;
6706 switch (op
[1] & 0x00)
6709 goto op_semantics_41
;
6715 switch (op
[1] & 0x00)
6718 goto op_semantics_41
;
6724 switch (op
[1] & 0x00)
6727 goto op_semantics_41
;
6733 switch (op
[1] & 0x00)
6736 goto op_semantics_41
;
6742 switch (op
[1] & 0x00)
6745 goto op_semantics_41
;
6751 switch (op
[1] & 0x00)
6754 goto op_semantics_41
;
6760 switch (op
[1] & 0x00)
6763 goto op_semantics_41
;
6769 switch (op
[1] & 0x08)
6774 /** 1111 00sd rdst 0bit bset #%1, %0%S0 */
6775 #line 873 "rx-decode.opc"
6776 int sd AU
= op
[0] & 0x03;
6777 #line 873 "rx-decode.opc"
6778 int rdst AU
= (op
[1] >> 4) & 0x0f;
6779 #line 873 "rx-decode.opc"
6780 int bit AU
= op
[1] & 0x07;
6783 printf ("\033[33m%s\033[0m %02x %02x\n",
6784 "/** 1111 00sd rdst 0bit bset #%1, %0%S0 */",
6786 printf (" sd = 0x%x,", sd
);
6787 printf (" rdst = 0x%x,", rdst
);
6788 printf (" bit = 0x%x\n", bit
);
6790 SYNTAX("bset #%1, %0%S0");
6791 #line 873 "rx-decode.opc"
6792 ID(bset
); BWL(BSIZE
); SC(bit
); DD(sd
, rdst
, BSIZE
); F_____
;
6799 /** 1111 00sd rdst 1bit bclr #%1, %0%S0 */
6800 #line 883 "rx-decode.opc"
6801 int sd AU
= op
[0] & 0x03;
6802 #line 883 "rx-decode.opc"
6803 int rdst AU
= (op
[1] >> 4) & 0x0f;
6804 #line 883 "rx-decode.opc"
6805 int bit AU
= op
[1] & 0x07;
6808 printf ("\033[33m%s\033[0m %02x %02x\n",
6809 "/** 1111 00sd rdst 1bit bclr #%1, %0%S0 */",
6811 printf (" sd = 0x%x,", sd
);
6812 printf (" rdst = 0x%x,", rdst
);
6813 printf (" bit = 0x%x\n", bit
);
6815 SYNTAX("bclr #%1, %0%S0");
6816 #line 883 "rx-decode.opc"
6817 ID(bclr
); BWL(BSIZE
); SC(bit
); DD(sd
, rdst
, BSIZE
); F_____
;
6825 switch (op
[1] & 0x08)
6828 goto op_semantics_42
;
6831 goto op_semantics_43
;
6837 switch (op
[1] & 0x08)
6840 goto op_semantics_42
;
6843 goto op_semantics_43
;
6849 switch (op
[1] & 0x08)
6852 goto op_semantics_42
;
6855 goto op_semantics_43
;
6861 switch (op
[1] & 0x0c)
6867 /** 1111 01sd rdst 0bit btst #%2, %1%S1 */
6868 #line 893 "rx-decode.opc"
6869 int sd AU
= op
[0] & 0x03;
6870 #line 893 "rx-decode.opc"
6871 int rdst AU
= (op
[1] >> 4) & 0x0f;
6872 #line 893 "rx-decode.opc"
6873 int bit AU
= op
[1] & 0x07;
6876 printf ("\033[33m%s\033[0m %02x %02x\n",
6877 "/** 1111 01sd rdst 0bit btst #%2, %1%S1 */",
6879 printf (" sd = 0x%x,", sd
);
6880 printf (" rdst = 0x%x,", rdst
);
6881 printf (" bit = 0x%x\n", bit
);
6883 SYNTAX("btst #%2, %1%S1");
6884 #line 893 "rx-decode.opc"
6885 ID(btst
); BWL(BSIZE
); S2C(bit
); SD(sd
, rdst
, BSIZE
); F___ZC
;
6892 /** 1111 01ss rsrc 10sz push%s %1 */
6893 #line 353 "rx-decode.opc"
6894 int ss AU
= op
[0] & 0x03;
6895 #line 353 "rx-decode.opc"
6896 int rsrc AU
= (op
[1] >> 4) & 0x0f;
6897 #line 353 "rx-decode.opc"
6898 int sz AU
= op
[1] & 0x03;
6901 printf ("\033[33m%s\033[0m %02x %02x\n",
6902 "/** 1111 01ss rsrc 10sz push%s %1 */",
6904 printf (" ss = 0x%x,", ss
);
6905 printf (" rsrc = 0x%x,", rsrc
);
6906 printf (" sz = 0x%x\n", sz
);
6908 SYNTAX("push%s %1");
6909 #line 353 "rx-decode.opc"
6910 ID(mov
); BWL(sz
); OP(0, RX_Operand_Predec
, 0, 0); SD(ss
, rsrc
, sz
); F_____
;
6912 /*----------------------------------------------------------------------*/
6917 default: UNSUPPORTED(); break;
6922 switch (op
[1] & 0x0c)
6926 goto op_semantics_44
;
6929 goto op_semantics_45
;
6931 default: UNSUPPORTED(); break;
6936 switch (op
[1] & 0x0c)
6940 goto op_semantics_44
;
6943 goto op_semantics_45
;
6945 default: UNSUPPORTED(); break;
6950 switch (op
[1] & 0x0c)
6954 goto op_semantics_44
;
6957 goto op_semantics_45
;
6959 default: UNSUPPORTED(); break;
6964 switch (op
[1] & 0x00)
6969 /** 1111 10sd rdst im sz mov%s #%1, %0 */
6970 #line 264 "rx-decode.opc"
6971 int sd AU
= op
[0] & 0x03;
6972 #line 264 "rx-decode.opc"
6973 int rdst AU
= (op
[1] >> 4) & 0x0f;
6974 #line 264 "rx-decode.opc"
6975 int im AU
= (op
[1] >> 2) & 0x03;
6976 #line 264 "rx-decode.opc"
6977 int sz AU
= op
[1] & 0x03;
6980 printf ("\033[33m%s\033[0m %02x %02x\n",
6981 "/** 1111 10sd rdst im sz mov%s #%1, %0 */",
6983 printf (" sd = 0x%x,", sd
);
6984 printf (" rdst = 0x%x,", rdst
);
6985 printf (" im = 0x%x,", im
);
6986 printf (" sz = 0x%x\n", sz
);
6988 SYNTAX("mov%s #%1, %0");
6989 #line 264 "rx-decode.opc"
6990 ID(mov
); DD(sd
, rdst
, sz
);
6991 if ((im
== 1 && sz
== 0)
6992 || (im
== 2 && sz
== 1)
6993 || (im
== 0 && sz
== 2))
7011 switch (op
[1] & 0x00)
7014 goto op_semantics_46
;
7020 switch (op
[1] & 0x00)
7023 goto op_semantics_46
;
7029 switch (op
[1] & 0x00)
7032 goto op_semantics_46
;
7038 switch (op
[1] & 0xff)
7042 switch (op
[2] & 0x00)
7046 /** 1111 1100 0000 0011 rsrc rdst sbb %1, %0 */
7047 #line 527 "rx-decode.opc"
7048 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7049 #line 527 "rx-decode.opc"
7050 int rdst AU
= op
[2] & 0x0f;
7053 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7054 "/** 1111 1100 0000 0011 rsrc rdst sbb %1, %0 */",
7055 op
[0], op
[1], op
[2]);
7056 printf (" rsrc = 0x%x,", rsrc
);
7057 printf (" rdst = 0x%x\n", rdst
);
7059 SYNTAX("sbb %1, %0");
7060 #line 527 "rx-decode.opc"
7061 ID(sbb
); SR (rsrc
); DR(rdst
); F_OSZC
;
7063 /* FIXME: only supports .L */
7070 switch (op
[2] & 0x00)
7074 /** 1111 1100 0000 0111 rsrc rdst neg %2, %0 */
7075 #line 458 "rx-decode.opc"
7076 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7077 #line 458 "rx-decode.opc"
7078 int rdst AU
= op
[2] & 0x0f;
7081 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7082 "/** 1111 1100 0000 0111 rsrc rdst neg %2, %0 */",
7083 op
[0], op
[1], op
[2]);
7084 printf (" rsrc = 0x%x,", rsrc
);
7085 printf (" rdst = 0x%x\n", rdst
);
7087 SYNTAX("neg %2, %0");
7088 #line 458 "rx-decode.opc"
7089 ID(sub
); DR(rdst
); SC(0); S2R(rsrc
); F_OSZC
;
7091 /*----------------------------------------------------------------------*/
7100 switch (op
[2] & 0x00)
7104 /** 1111 1100 0000 1011 rsrc rdst adc %1, %0 */
7105 #line 467 "rx-decode.opc"
7106 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7107 #line 467 "rx-decode.opc"
7108 int rdst AU
= op
[2] & 0x0f;
7111 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7112 "/** 1111 1100 0000 1011 rsrc rdst adc %1, %0 */",
7113 op
[0], op
[1], op
[2]);
7114 printf (" rsrc = 0x%x,", rsrc
);
7115 printf (" rdst = 0x%x\n", rdst
);
7117 SYNTAX("adc %1, %0");
7118 #line 467 "rx-decode.opc"
7119 ID(adc
); SR(rsrc
); DR(rdst
); F_OSZC
;
7127 switch (op
[2] & 0x00)
7131 /** 1111 1100 0000 1111 rsrc rdst abs %1, %0 */
7132 #line 540 "rx-decode.opc"
7133 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7134 #line 540 "rx-decode.opc"
7135 int rdst AU
= op
[2] & 0x0f;
7138 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7139 "/** 1111 1100 0000 1111 rsrc rdst abs %1, %0 */",
7140 op
[0], op
[1], op
[2]);
7141 printf (" rsrc = 0x%x,", rsrc
);
7142 printf (" rdst = 0x%x\n", rdst
);
7144 SYNTAX("abs %1, %0");
7145 #line 540 "rx-decode.opc"
7146 ID(abs
); DR(rdst
); SR(rsrc
); F_OSZ_
;
7148 /*----------------------------------------------------------------------*/
7157 switch (op
[2] & 0x00)
7162 /** 1111 1100 0001 00ss rsrc rdst max %1%S1, %0 */
7163 #line 549 "rx-decode.opc"
7164 int ss AU
= op
[1] & 0x03;
7165 #line 549 "rx-decode.opc"
7166 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7167 #line 549 "rx-decode.opc"
7168 int rdst AU
= op
[2] & 0x0f;
7171 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7172 "/** 1111 1100 0001 00ss rsrc rdst max %1%S1, %0 */",
7173 op
[0], op
[1], op
[2]);
7174 printf (" ss = 0x%x,", ss
);
7175 printf (" rsrc = 0x%x,", rsrc
);
7176 printf (" rdst = 0x%x\n", rdst
);
7178 SYNTAX("max %1%S1, %0");
7179 #line 549 "rx-decode.opc"
7180 if (ss
== 3 && rsrc
== 0 && rdst
== 0)
7187 ID(max
); SP(ss
, rsrc
); DR(rdst
);
7196 switch (op
[2] & 0x00)
7199 goto op_semantics_47
;
7205 switch (op
[2] & 0x00)
7208 goto op_semantics_47
;
7214 switch (op
[2] & 0x00)
7217 goto op_semantics_47
;
7223 switch (op
[2] & 0x00)
7228 /** 1111 1100 0001 01ss rsrc rdst min %1%S1, %0 */
7229 #line 569 "rx-decode.opc"
7230 int ss AU
= op
[1] & 0x03;
7231 #line 569 "rx-decode.opc"
7232 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7233 #line 569 "rx-decode.opc"
7234 int rdst AU
= op
[2] & 0x0f;
7237 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7238 "/** 1111 1100 0001 01ss rsrc rdst min %1%S1, %0 */",
7239 op
[0], op
[1], op
[2]);
7240 printf (" ss = 0x%x,", ss
);
7241 printf (" rsrc = 0x%x,", rsrc
);
7242 printf (" rdst = 0x%x\n", rdst
);
7244 SYNTAX("min %1%S1, %0");
7245 #line 569 "rx-decode.opc"
7246 ID(min
); SP(ss
, rsrc
); DR(rdst
);
7254 switch (op
[2] & 0x00)
7257 goto op_semantics_48
;
7263 switch (op
[2] & 0x00)
7266 goto op_semantics_48
;
7272 switch (op
[2] & 0x00)
7275 goto op_semantics_48
;
7281 switch (op
[2] & 0x00)
7286 /** 1111 1100 0001 10ss rsrc rdst emul %1%S1, %0 */
7287 #line 599 "rx-decode.opc"
7288 int ss AU
= op
[1] & 0x03;
7289 #line 599 "rx-decode.opc"
7290 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7291 #line 599 "rx-decode.opc"
7292 int rdst AU
= op
[2] & 0x0f;
7295 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7296 "/** 1111 1100 0001 10ss rsrc rdst emul %1%S1, %0 */",
7297 op
[0], op
[1], op
[2]);
7298 printf (" ss = 0x%x,", ss
);
7299 printf (" rsrc = 0x%x,", rsrc
);
7300 printf (" rdst = 0x%x\n", rdst
);
7302 SYNTAX("emul %1%S1, %0");
7303 #line 599 "rx-decode.opc"
7304 ID(emul
); SP(ss
, rsrc
); DR(rdst
);
7312 switch (op
[2] & 0x00)
7315 goto op_semantics_49
;
7321 switch (op
[2] & 0x00)
7324 goto op_semantics_49
;
7330 switch (op
[2] & 0x00)
7333 goto op_semantics_49
;
7339 switch (op
[2] & 0x00)
7344 /** 1111 1100 0001 11ss rsrc rdst emulu %1%S1, %0 */
7345 #line 611 "rx-decode.opc"
7346 int ss AU
= op
[1] & 0x03;
7347 #line 611 "rx-decode.opc"
7348 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7349 #line 611 "rx-decode.opc"
7350 int rdst AU
= op
[2] & 0x0f;
7353 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7354 "/** 1111 1100 0001 11ss rsrc rdst emulu %1%S1, %0 */",
7355 op
[0], op
[1], op
[2]);
7356 printf (" ss = 0x%x,", ss
);
7357 printf (" rsrc = 0x%x,", rsrc
);
7358 printf (" rdst = 0x%x\n", rdst
);
7360 SYNTAX("emulu %1%S1, %0");
7361 #line 611 "rx-decode.opc"
7362 ID(emulu
); SP(ss
, rsrc
); DR(rdst
);
7370 switch (op
[2] & 0x00)
7373 goto op_semantics_50
;
7379 switch (op
[2] & 0x00)
7382 goto op_semantics_50
;
7388 switch (op
[2] & 0x00)
7391 goto op_semantics_50
;
7397 switch (op
[2] & 0x00)
7402 /** 1111 1100 0010 00ss rsrc rdst div %1%S1, %0 */
7403 #line 623 "rx-decode.opc"
7404 int ss AU
= op
[1] & 0x03;
7405 #line 623 "rx-decode.opc"
7406 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7407 #line 623 "rx-decode.opc"
7408 int rdst AU
= op
[2] & 0x0f;
7411 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7412 "/** 1111 1100 0010 00ss rsrc rdst div %1%S1, %0 */",
7413 op
[0], op
[1], op
[2]);
7414 printf (" ss = 0x%x,", ss
);
7415 printf (" rsrc = 0x%x,", rsrc
);
7416 printf (" rdst = 0x%x\n", rdst
);
7418 SYNTAX("div %1%S1, %0");
7419 #line 623 "rx-decode.opc"
7420 ID(div
); SP(ss
, rsrc
); DR(rdst
); F_O___
;
7428 switch (op
[2] & 0x00)
7431 goto op_semantics_51
;
7437 switch (op
[2] & 0x00)
7440 goto op_semantics_51
;
7446 switch (op
[2] & 0x00)
7449 goto op_semantics_51
;
7455 switch (op
[2] & 0x00)
7460 /** 1111 1100 0010 01ss rsrc rdst divu %1%S1, %0 */
7461 #line 635 "rx-decode.opc"
7462 int ss AU
= op
[1] & 0x03;
7463 #line 635 "rx-decode.opc"
7464 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7465 #line 635 "rx-decode.opc"
7466 int rdst AU
= op
[2] & 0x0f;
7469 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7470 "/** 1111 1100 0010 01ss rsrc rdst divu %1%S1, %0 */",
7471 op
[0], op
[1], op
[2]);
7472 printf (" ss = 0x%x,", ss
);
7473 printf (" rsrc = 0x%x,", rsrc
);
7474 printf (" rdst = 0x%x\n", rdst
);
7476 SYNTAX("divu %1%S1, %0");
7477 #line 635 "rx-decode.opc"
7478 ID(divu
); SP(ss
, rsrc
); DR(rdst
); F_O___
;
7486 switch (op
[2] & 0x00)
7489 goto op_semantics_52
;
7495 switch (op
[2] & 0x00)
7498 goto op_semantics_52
;
7504 switch (op
[2] & 0x00)
7507 goto op_semantics_52
;
7513 switch (op
[2] & 0x00)
7518 /** 1111 1100 0011 00ss rsrc rdst tst %1%S1, %2 */
7519 #line 446 "rx-decode.opc"
7520 int ss AU
= op
[1] & 0x03;
7521 #line 446 "rx-decode.opc"
7522 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7523 #line 446 "rx-decode.opc"
7524 int rdst AU
= op
[2] & 0x0f;
7527 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7528 "/** 1111 1100 0011 00ss rsrc rdst tst %1%S1, %2 */",
7529 op
[0], op
[1], op
[2]);
7530 printf (" ss = 0x%x,", ss
);
7531 printf (" rsrc = 0x%x,", rsrc
);
7532 printf (" rdst = 0x%x\n", rdst
);
7534 SYNTAX("tst %1%S1, %2");
7535 #line 446 "rx-decode.opc"
7536 ID(and); SP(ss
, rsrc
); S2R(rdst
); F__SZ_
;
7544 switch (op
[2] & 0x00)
7547 goto op_semantics_53
;
7553 switch (op
[2] & 0x00)
7556 goto op_semantics_53
;
7562 switch (op
[2] & 0x00)
7565 goto op_semantics_53
;
7571 switch (op
[2] & 0x00)
7576 /** 1111 1100 0011 01ss rsrc rdst xor %1%S1, %0 */
7577 #line 425 "rx-decode.opc"
7578 int ss AU
= op
[1] & 0x03;
7579 #line 425 "rx-decode.opc"
7580 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7581 #line 425 "rx-decode.opc"
7582 int rdst AU
= op
[2] & 0x0f;
7585 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7586 "/** 1111 1100 0011 01ss rsrc rdst xor %1%S1, %0 */",
7587 op
[0], op
[1], op
[2]);
7588 printf (" ss = 0x%x,", ss
);
7589 printf (" rsrc = 0x%x,", rsrc
);
7590 printf (" rdst = 0x%x\n", rdst
);
7592 SYNTAX("xor %1%S1, %0");
7593 #line 425 "rx-decode.opc"
7594 ID(xor); SP(ss
, rsrc
); DR(rdst
); F__SZ_
;
7602 switch (op
[2] & 0x00)
7605 goto op_semantics_54
;
7611 switch (op
[2] & 0x00)
7614 goto op_semantics_54
;
7620 switch (op
[2] & 0x00)
7623 goto op_semantics_54
;
7629 switch (op
[2] & 0x00)
7633 /** 1111 1100 0011 1011 rsrc rdst not %1, %0 */
7634 #line 437 "rx-decode.opc"
7635 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7636 #line 437 "rx-decode.opc"
7637 int rdst AU
= op
[2] & 0x0f;
7640 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7641 "/** 1111 1100 0011 1011 rsrc rdst not %1, %0 */",
7642 op
[0], op
[1], op
[2]);
7643 printf (" rsrc = 0x%x,", rsrc
);
7644 printf (" rdst = 0x%x\n", rdst
);
7646 SYNTAX("not %1, %0");
7647 #line 437 "rx-decode.opc"
7648 ID(xor); DR(rdst
); SR(rsrc
); S2C(~0); F__SZ_
;
7650 /*----------------------------------------------------------------------*/
7659 switch (op
[2] & 0x00)
7664 /** 1111 1100 0100 00ss rsrc rdst xchg %1%S1, %0 */
7665 #line 359 "rx-decode.opc"
7666 int ss AU
= op
[1] & 0x03;
7667 #line 359 "rx-decode.opc"
7668 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7669 #line 359 "rx-decode.opc"
7670 int rdst AU
= op
[2] & 0x0f;
7673 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7674 "/** 1111 1100 0100 00ss rsrc rdst xchg %1%S1, %0 */",
7675 op
[0], op
[1], op
[2]);
7676 printf (" ss = 0x%x,", ss
);
7677 printf (" rsrc = 0x%x,", rsrc
);
7678 printf (" rdst = 0x%x\n", rdst
);
7680 SYNTAX("xchg %1%S1, %0");
7681 #line 359 "rx-decode.opc"
7682 ID(xchg
); DR(rdst
); SP(ss
, rsrc
);
7690 switch (op
[2] & 0x00)
7693 goto op_semantics_55
;
7699 switch (op
[2] & 0x00)
7702 goto op_semantics_55
;
7708 switch (op
[2] & 0x00)
7711 goto op_semantics_55
;
7717 switch (op
[2] & 0x00)
7722 /** 1111 1100 0100 01sd rsrc rdst itof %1%S1, %0 */
7723 #line 864 "rx-decode.opc"
7724 int sd AU
= op
[1] & 0x03;
7725 #line 864 "rx-decode.opc"
7726 int rsrc AU
= (op
[2] >> 4) & 0x0f;
7727 #line 864 "rx-decode.opc"
7728 int rdst AU
= op
[2] & 0x0f;
7731 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7732 "/** 1111 1100 0100 01sd rsrc rdst itof %1%S1, %0 */",
7733 op
[0], op
[1], op
[2]);
7734 printf (" sd = 0x%x,", sd
);
7735 printf (" rsrc = 0x%x,", rsrc
);
7736 printf (" rdst = 0x%x\n", rdst
);
7738 SYNTAX("itof %1%S1, %0");
7739 #line 864 "rx-decode.opc"
7740 ID(itof
); DR (rdst
); SP(sd
, rsrc
); F__SZ_
;
7748 switch (op
[2] & 0x00)
7751 goto op_semantics_56
;
7757 switch (op
[2] & 0x00)
7760 goto op_semantics_56
;
7766 switch (op
[2] & 0x00)
7769 goto op_semantics_56
;
7775 switch (op
[2] & 0x00)
7780 /** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */
7781 #line 876 "rx-decode.opc"
7782 int sd AU
= op
[1] & 0x03;
7783 #line 876 "rx-decode.opc"
7784 int rdst AU
= (op
[2] >> 4) & 0x0f;
7785 #line 876 "rx-decode.opc"
7786 int rsrc AU
= op
[2] & 0x0f;
7789 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7790 "/** 1111 1100 0110 00sd rdst rsrc bset %1, %0%S0 */",
7791 op
[0], op
[1], op
[2]);
7792 printf (" sd = 0x%x,", sd
);
7793 printf (" rdst = 0x%x,", rdst
);
7794 printf (" rsrc = 0x%x\n", rsrc
);
7796 SYNTAX("bset %1, %0%S0");
7797 #line 876 "rx-decode.opc"
7798 ID(bset
); BWL(BSIZE
); SR(rsrc
); DD(sd
, rdst
, BSIZE
); F_____
;
7806 switch (op
[2] & 0x00)
7809 goto op_semantics_57
;
7815 switch (op
[2] & 0x00)
7818 goto op_semantics_57
;
7824 switch (op
[2] & 0x00)
7827 goto op_semantics_57
;
7833 switch (op
[2] & 0x00)
7838 /** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */
7839 #line 886 "rx-decode.opc"
7840 int sd AU
= op
[1] & 0x03;
7841 #line 886 "rx-decode.opc"
7842 int rdst AU
= (op
[2] >> 4) & 0x0f;
7843 #line 886 "rx-decode.opc"
7844 int rsrc AU
= op
[2] & 0x0f;
7847 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7848 "/** 1111 1100 0110 01sd rdst rsrc bclr %1, %0%S0 */",
7849 op
[0], op
[1], op
[2]);
7850 printf (" sd = 0x%x,", sd
);
7851 printf (" rdst = 0x%x,", rdst
);
7852 printf (" rsrc = 0x%x\n", rsrc
);
7854 SYNTAX("bclr %1, %0%S0");
7855 #line 886 "rx-decode.opc"
7856 ID(bclr
); BWL(BSIZE
); SR(rsrc
); DD(sd
, rdst
, BSIZE
); F_____
;
7864 switch (op
[2] & 0x00)
7867 goto op_semantics_58
;
7873 switch (op
[2] & 0x00)
7876 goto op_semantics_58
;
7882 switch (op
[2] & 0x00)
7885 goto op_semantics_58
;
7891 switch (op
[2] & 0x00)
7896 /** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */
7897 #line 896 "rx-decode.opc"
7898 int sd AU
= op
[1] & 0x03;
7899 #line 896 "rx-decode.opc"
7900 int rdst AU
= (op
[2] >> 4) & 0x0f;
7901 #line 896 "rx-decode.opc"
7902 int rsrc AU
= op
[2] & 0x0f;
7905 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7906 "/** 1111 1100 0110 10sd rdst rsrc btst %2, %1%S1 */",
7907 op
[0], op
[1], op
[2]);
7908 printf (" sd = 0x%x,", sd
);
7909 printf (" rdst = 0x%x,", rdst
);
7910 printf (" rsrc = 0x%x\n", rsrc
);
7912 SYNTAX("btst %2, %1%S1");
7913 #line 896 "rx-decode.opc"
7914 ID(btst
); BWL(BSIZE
); S2R(rsrc
); SD(sd
, rdst
, BSIZE
); F___ZC
;
7922 switch (op
[2] & 0x00)
7925 goto op_semantics_59
;
7931 switch (op
[2] & 0x00)
7934 goto op_semantics_59
;
7940 switch (op
[2] & 0x00)
7943 goto op_semantics_59
;
7949 switch (op
[2] & 0x00)
7954 /** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */
7955 #line 906 "rx-decode.opc"
7956 int sd AU
= op
[1] & 0x03;
7957 #line 906 "rx-decode.opc"
7958 int rdst AU
= (op
[2] >> 4) & 0x0f;
7959 #line 906 "rx-decode.opc"
7960 int rsrc AU
= op
[2] & 0x0f;
7963 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
7964 "/** 1111 1100 0110 11sd rdst rsrc bnot %1, %0%S0 */",
7965 op
[0], op
[1], op
[2]);
7966 printf (" sd = 0x%x,", sd
);
7967 printf (" rdst = 0x%x,", rdst
);
7968 printf (" rsrc = 0x%x\n", rsrc
);
7970 SYNTAX("bnot %1, %0%S0");
7971 #line 906 "rx-decode.opc"
7972 ID(bnot
); BWL(BSIZE
); SR(rsrc
); DD(sd
, rdst
, BSIZE
);
7980 switch (op
[2] & 0x00)
7983 goto op_semantics_60
;
7989 switch (op
[2] & 0x00)
7992 goto op_semantics_60
;
7998 switch (op
[2] & 0x00)
8001 goto op_semantics_60
;
8007 switch (op
[2] & 0x00)
8012 /** 1111 1100 1000 00sd rsrc rdst fsub %1%S1, %0 */
8013 #line 843 "rx-decode.opc"
8014 int sd AU
= op
[1] & 0x03;
8015 #line 843 "rx-decode.opc"
8016 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8017 #line 843 "rx-decode.opc"
8018 int rdst AU
= op
[2] & 0x0f;
8021 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8022 "/** 1111 1100 1000 00sd rsrc rdst fsub %1%S1, %0 */",
8023 op
[0], op
[1], op
[2]);
8024 printf (" sd = 0x%x,", sd
);
8025 printf (" rsrc = 0x%x,", rsrc
);
8026 printf (" rdst = 0x%x\n", rdst
);
8028 SYNTAX("fsub %1%S1, %0");
8029 #line 843 "rx-decode.opc"
8030 ID(fsub
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8038 switch (op
[2] & 0x00)
8041 goto op_semantics_61
;
8047 switch (op
[2] & 0x00)
8050 goto op_semantics_61
;
8056 switch (op
[2] & 0x00)
8059 goto op_semantics_61
;
8065 switch (op
[2] & 0x00)
8070 /** 1111 1100 1000 01sd rsrc rdst fcmp %1%S1, %0 */
8071 #line 837 "rx-decode.opc"
8072 int sd AU
= op
[1] & 0x03;
8073 #line 837 "rx-decode.opc"
8074 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8075 #line 837 "rx-decode.opc"
8076 int rdst AU
= op
[2] & 0x0f;
8079 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8080 "/** 1111 1100 1000 01sd rsrc rdst fcmp %1%S1, %0 */",
8081 op
[0], op
[1], op
[2]);
8082 printf (" sd = 0x%x,", sd
);
8083 printf (" rsrc = 0x%x,", rsrc
);
8084 printf (" rdst = 0x%x\n", rdst
);
8086 SYNTAX("fcmp %1%S1, %0");
8087 #line 837 "rx-decode.opc"
8088 ID(fcmp
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F_OSZ_
;
8096 switch (op
[2] & 0x00)
8099 goto op_semantics_62
;
8105 switch (op
[2] & 0x00)
8108 goto op_semantics_62
;
8114 switch (op
[2] & 0x00)
8117 goto op_semantics_62
;
8123 switch (op
[2] & 0x00)
8128 /** 1111 1100 1000 10sd rsrc rdst fadd %1%S1, %0 */
8129 #line 831 "rx-decode.opc"
8130 int sd AU
= op
[1] & 0x03;
8131 #line 831 "rx-decode.opc"
8132 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8133 #line 831 "rx-decode.opc"
8134 int rdst AU
= op
[2] & 0x0f;
8137 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8138 "/** 1111 1100 1000 10sd rsrc rdst fadd %1%S1, %0 */",
8139 op
[0], op
[1], op
[2]);
8140 printf (" sd = 0x%x,", sd
);
8141 printf (" rsrc = 0x%x,", rsrc
);
8142 printf (" rdst = 0x%x\n", rdst
);
8144 SYNTAX("fadd %1%S1, %0");
8145 #line 831 "rx-decode.opc"
8146 ID(fadd
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8154 switch (op
[2] & 0x00)
8157 goto op_semantics_63
;
8163 switch (op
[2] & 0x00)
8166 goto op_semantics_63
;
8172 switch (op
[2] & 0x00)
8175 goto op_semantics_63
;
8181 switch (op
[2] & 0x00)
8186 /** 1111 1100 1000 11sd rsrc rdst fmul %1%S1, %0 */
8187 #line 852 "rx-decode.opc"
8188 int sd AU
= op
[1] & 0x03;
8189 #line 852 "rx-decode.opc"
8190 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8191 #line 852 "rx-decode.opc"
8192 int rdst AU
= op
[2] & 0x0f;
8195 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8196 "/** 1111 1100 1000 11sd rsrc rdst fmul %1%S1, %0 */",
8197 op
[0], op
[1], op
[2]);
8198 printf (" sd = 0x%x,", sd
);
8199 printf (" rsrc = 0x%x,", rsrc
);
8200 printf (" rdst = 0x%x\n", rdst
);
8202 SYNTAX("fmul %1%S1, %0");
8203 #line 852 "rx-decode.opc"
8204 ID(fmul
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8212 switch (op
[2] & 0x00)
8215 goto op_semantics_64
;
8221 switch (op
[2] & 0x00)
8224 goto op_semantics_64
;
8230 switch (op
[2] & 0x00)
8233 goto op_semantics_64
;
8239 switch (op
[2] & 0x00)
8244 /** 1111 1100 1001 00sd rsrc rdst fdiv %1%S1, %0 */
8245 #line 858 "rx-decode.opc"
8246 int sd AU
= op
[1] & 0x03;
8247 #line 858 "rx-decode.opc"
8248 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8249 #line 858 "rx-decode.opc"
8250 int rdst AU
= op
[2] & 0x0f;
8253 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8254 "/** 1111 1100 1001 00sd rsrc rdst fdiv %1%S1, %0 */",
8255 op
[0], op
[1], op
[2]);
8256 printf (" sd = 0x%x,", sd
);
8257 printf (" rsrc = 0x%x,", rsrc
);
8258 printf (" rdst = 0x%x\n", rdst
);
8260 SYNTAX("fdiv %1%S1, %0");
8261 #line 858 "rx-decode.opc"
8262 ID(fdiv
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8270 switch (op
[2] & 0x00)
8273 goto op_semantics_65
;
8279 switch (op
[2] & 0x00)
8282 goto op_semantics_65
;
8288 switch (op
[2] & 0x00)
8291 goto op_semantics_65
;
8297 switch (op
[2] & 0x00)
8302 /** 1111 1100 1001 01sd rsrc rdst ftoi %1%S1, %0 */
8303 #line 846 "rx-decode.opc"
8304 int sd AU
= op
[1] & 0x03;
8305 #line 846 "rx-decode.opc"
8306 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8307 #line 846 "rx-decode.opc"
8308 int rdst AU
= op
[2] & 0x0f;
8311 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8312 "/** 1111 1100 1001 01sd rsrc rdst ftoi %1%S1, %0 */",
8313 op
[0], op
[1], op
[2]);
8314 printf (" sd = 0x%x,", sd
);
8315 printf (" rsrc = 0x%x,", rsrc
);
8316 printf (" rdst = 0x%x\n", rdst
);
8318 SYNTAX("ftoi %1%S1, %0");
8319 #line 846 "rx-decode.opc"
8320 ID(ftoi
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8328 switch (op
[2] & 0x00)
8331 goto op_semantics_66
;
8337 switch (op
[2] & 0x00)
8340 goto op_semantics_66
;
8346 switch (op
[2] & 0x00)
8349 goto op_semantics_66
;
8355 switch (op
[2] & 0x00)
8360 /** 1111 1100 1001 10sd rsrc rdst round %1%S1, %0 */
8361 #line 861 "rx-decode.opc"
8362 int sd AU
= op
[1] & 0x03;
8363 #line 861 "rx-decode.opc"
8364 int rsrc AU
= (op
[2] >> 4) & 0x0f;
8365 #line 861 "rx-decode.opc"
8366 int rdst AU
= op
[2] & 0x0f;
8369 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8370 "/** 1111 1100 1001 10sd rsrc rdst round %1%S1, %0 */",
8371 op
[0], op
[1], op
[2]);
8372 printf (" sd = 0x%x,", sd
);
8373 printf (" rsrc = 0x%x,", rsrc
);
8374 printf (" rdst = 0x%x\n", rdst
);
8376 SYNTAX("round %1%S1, %0");
8377 #line 861 "rx-decode.opc"
8378 ID(round
); DR(rdst
); SD(sd
, rsrc
, LSIZE
); F__SZ_
;
8386 switch (op
[2] & 0x00)
8389 goto op_semantics_67
;
8395 switch (op
[2] & 0x00)
8398 goto op_semantics_67
;
8404 switch (op
[2] & 0x00)
8407 goto op_semantics_67
;
8413 switch (op
[2] & 0x00)
8418 /** 1111 1100 1101 sz sd rdst cond sc%1%s %0 */
8419 #line 970 "rx-decode.opc"
8420 int sz AU
= (op
[1] >> 2) & 0x03;
8421 #line 970 "rx-decode.opc"
8422 int sd AU
= op
[1] & 0x03;
8423 #line 970 "rx-decode.opc"
8424 int rdst AU
= (op
[2] >> 4) & 0x0f;
8425 #line 970 "rx-decode.opc"
8426 int cond AU
= op
[2] & 0x0f;
8429 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8430 "/** 1111 1100 1101 sz sd rdst cond sc%1%s %0 */",
8431 op
[0], op
[1], op
[2]);
8432 printf (" sz = 0x%x,", sz
);
8433 printf (" sd = 0x%x,", sd
);
8434 printf (" rdst = 0x%x,", rdst
);
8435 printf (" cond = 0x%x\n", cond
);
8437 SYNTAX("sc%1%s %0");
8438 #line 970 "rx-decode.opc"
8439 ID(sccnd
); BWL(sz
); DD (sd
, rdst
, sz
); Scc(cond
);
8447 switch (op
[2] & 0x00)
8450 goto op_semantics_68
;
8456 switch (op
[2] & 0x00)
8459 goto op_semantics_68
;
8465 switch (op
[2] & 0x00)
8468 goto op_semantics_68
;
8474 switch (op
[2] & 0x00)
8477 goto op_semantics_68
;
8483 switch (op
[2] & 0x00)
8486 goto op_semantics_68
;
8492 switch (op
[2] & 0x00)
8495 goto op_semantics_68
;
8501 switch (op
[2] & 0x00)
8504 goto op_semantics_68
;
8510 switch (op
[2] & 0x00)
8513 goto op_semantics_68
;
8519 switch (op
[2] & 0x00)
8522 goto op_semantics_68
;
8528 switch (op
[2] & 0x00)
8531 goto op_semantics_68
;
8537 switch (op
[2] & 0x00)
8540 goto op_semantics_68
;
8546 switch (op
[2] & 0x0f)
8565 /** 1111 1100 111bit sd rdst cond bm%2 #%1, %0%S0 */
8566 #line 913 "rx-decode.opc"
8567 int bit AU
= (op
[1] >> 2) & 0x07;
8568 #line 913 "rx-decode.opc"
8569 int sd AU
= op
[1] & 0x03;
8570 #line 913 "rx-decode.opc"
8571 int rdst AU
= (op
[2] >> 4) & 0x0f;
8572 #line 913 "rx-decode.opc"
8573 int cond AU
= op
[2] & 0x0f;
8576 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8577 "/** 1111 1100 111bit sd rdst cond bm%2 #%1, %0%S0 */",
8578 op
[0], op
[1], op
[2]);
8579 printf (" bit = 0x%x,", bit
);
8580 printf (" sd = 0x%x,", sd
);
8581 printf (" rdst = 0x%x,", rdst
);
8582 printf (" cond = 0x%x\n", cond
);
8584 SYNTAX("bm%2 #%1, %0%S0");
8585 #line 913 "rx-decode.opc"
8586 ID(bmcc
); BWL(BSIZE
); S2cc(cond
); SC(bit
); DD(sd
, rdst
, BSIZE
);
8593 /** 1111 1100 111bit sd rdst 1111 bnot #%1, %0%S0 */
8594 #line 903 "rx-decode.opc"
8595 int bit AU
= (op
[1] >> 2) & 0x07;
8596 #line 903 "rx-decode.opc"
8597 int sd AU
= op
[1] & 0x03;
8598 #line 903 "rx-decode.opc"
8599 int rdst AU
= (op
[2] >> 4) & 0x0f;
8602 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
8603 "/** 1111 1100 111bit sd rdst 1111 bnot #%1, %0%S0 */",
8604 op
[0], op
[1], op
[2]);
8605 printf (" bit = 0x%x,", bit
);
8606 printf (" sd = 0x%x,", sd
);
8607 printf (" rdst = 0x%x\n", rdst
);
8609 SYNTAX("bnot #%1, %0%S0");
8610 #line 903 "rx-decode.opc"
8611 ID(bnot
); BWL(BSIZE
); SC(bit
); DD(sd
, rdst
, BSIZE
);
8619 switch (op
[2] & 0x0f)
8636 goto op_semantics_69
;
8639 goto op_semantics_70
;
8645 switch (op
[2] & 0x0f)
8662 goto op_semantics_69
;
8665 goto op_semantics_70
;
8671 switch (op
[2] & 0x0f)
8688 goto op_semantics_69
;
8691 goto op_semantics_70
;
8697 switch (op
[2] & 0x0f)
8714 goto op_semantics_69
;
8717 goto op_semantics_70
;
8723 switch (op
[2] & 0x0f)
8740 goto op_semantics_69
;
8743 goto op_semantics_70
;
8749 switch (op
[2] & 0x0f)
8766 goto op_semantics_69
;
8769 goto op_semantics_70
;
8775 switch (op
[2] & 0x0f)
8792 goto op_semantics_69
;
8795 goto op_semantics_70
;
8801 switch (op
[2] & 0x0f)
8818 goto op_semantics_69
;
8821 goto op_semantics_70
;
8827 switch (op
[2] & 0x0f)
8844 goto op_semantics_69
;
8847 goto op_semantics_70
;
8853 switch (op
[2] & 0x0f)
8870 goto op_semantics_69
;
8873 goto op_semantics_70
;
8879 switch (op
[2] & 0x0f)
8896 goto op_semantics_69
;
8899 goto op_semantics_70
;
8905 switch (op
[2] & 0x0f)
8922 goto op_semantics_69
;
8925 goto op_semantics_70
;
8931 switch (op
[2] & 0x0f)
8948 goto op_semantics_69
;
8951 goto op_semantics_70
;
8957 switch (op
[2] & 0x0f)
8974 goto op_semantics_69
;
8977 goto op_semantics_70
;
8983 switch (op
[2] & 0x0f)
9000 goto op_semantics_69
;
9003 goto op_semantics_70
;
9009 switch (op
[2] & 0x0f)
9026 goto op_semantics_69
;
9029 goto op_semantics_70
;
9035 switch (op
[2] & 0x0f)
9052 goto op_semantics_69
;
9055 goto op_semantics_70
;
9061 switch (op
[2] & 0x0f)
9078 goto op_semantics_69
;
9081 goto op_semantics_70
;
9087 switch (op
[2] & 0x0f)
9104 goto op_semantics_69
;
9107 goto op_semantics_70
;
9113 switch (op
[2] & 0x0f)
9130 goto op_semantics_69
;
9133 goto op_semantics_70
;
9139 switch (op
[2] & 0x0f)
9156 goto op_semantics_69
;
9159 goto op_semantics_70
;
9165 switch (op
[2] & 0x0f)
9182 goto op_semantics_69
;
9185 goto op_semantics_70
;
9191 switch (op
[2] & 0x0f)
9208 goto op_semantics_69
;
9211 goto op_semantics_70
;
9217 switch (op
[2] & 0x0f)
9234 goto op_semantics_69
;
9237 goto op_semantics_70
;
9243 switch (op
[2] & 0x0f)
9260 goto op_semantics_69
;
9263 goto op_semantics_70
;
9269 switch (op
[2] & 0x0f)
9286 goto op_semantics_69
;
9289 goto op_semantics_70
;
9295 switch (op
[2] & 0x0f)
9312 goto op_semantics_69
;
9315 goto op_semantics_70
;
9321 switch (op
[2] & 0x0f)
9338 goto op_semantics_69
;
9341 goto op_semantics_70
;
9347 switch (op
[2] & 0x0f)
9364 goto op_semantics_69
;
9367 goto op_semantics_70
;
9373 switch (op
[2] & 0x0f)
9390 goto op_semantics_69
;
9393 goto op_semantics_70
;
9399 switch (op
[2] & 0x0f)
9416 goto op_semantics_69
;
9419 goto op_semantics_70
;
9423 default: UNSUPPORTED(); break;
9428 switch (op
[1] & 0xff)
9432 switch (op
[2] & 0x00)
9436 /** 1111 1101 0000 0000 srca srcb mulhi %1, %2 */
9437 #line 786 "rx-decode.opc"
9438 int srca AU
= (op
[2] >> 4) & 0x0f;
9439 #line 786 "rx-decode.opc"
9440 int srcb AU
= op
[2] & 0x0f;
9443 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9444 "/** 1111 1101 0000 0000 srca srcb mulhi %1, %2 */",
9445 op
[0], op
[1], op
[2]);
9446 printf (" srca = 0x%x,", srca
);
9447 printf (" srcb = 0x%x\n", srcb
);
9449 SYNTAX("mulhi %1, %2");
9450 #line 786 "rx-decode.opc"
9451 ID(mulhi
); SR(srca
); S2R(srcb
); F_____
;
9459 switch (op
[2] & 0x00)
9463 /** 1111 1101 0000 0001 srca srcb mullo %1, %2 */
9464 #line 789 "rx-decode.opc"
9465 int srca AU
= (op
[2] >> 4) & 0x0f;
9466 #line 789 "rx-decode.opc"
9467 int srcb AU
= op
[2] & 0x0f;
9470 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9471 "/** 1111 1101 0000 0001 srca srcb mullo %1, %2 */",
9472 op
[0], op
[1], op
[2]);
9473 printf (" srca = 0x%x,", srca
);
9474 printf (" srcb = 0x%x\n", srcb
);
9476 SYNTAX("mullo %1, %2");
9477 #line 789 "rx-decode.opc"
9478 ID(mullo
); SR(srca
); S2R(srcb
); F_____
;
9486 switch (op
[2] & 0x00)
9490 /** 1111 1101 0000 0100 srca srcb machi %1, %2 */
9491 #line 792 "rx-decode.opc"
9492 int srca AU
= (op
[2] >> 4) & 0x0f;
9493 #line 792 "rx-decode.opc"
9494 int srcb AU
= op
[2] & 0x0f;
9497 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9498 "/** 1111 1101 0000 0100 srca srcb machi %1, %2 */",
9499 op
[0], op
[1], op
[2]);
9500 printf (" srca = 0x%x,", srca
);
9501 printf (" srcb = 0x%x\n", srcb
);
9503 SYNTAX("machi %1, %2");
9504 #line 792 "rx-decode.opc"
9505 ID(machi
); SR(srca
); S2R(srcb
); F_____
;
9513 switch (op
[2] & 0x00)
9517 /** 1111 1101 0000 0101 srca srcb maclo %1, %2 */
9518 #line 795 "rx-decode.opc"
9519 int srca AU
= (op
[2] >> 4) & 0x0f;
9520 #line 795 "rx-decode.opc"
9521 int srcb AU
= op
[2] & 0x0f;
9524 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9525 "/** 1111 1101 0000 0101 srca srcb maclo %1, %2 */",
9526 op
[0], op
[1], op
[2]);
9527 printf (" srca = 0x%x,", srca
);
9528 printf (" srcb = 0x%x\n", srcb
);
9530 SYNTAX("maclo %1, %2");
9531 #line 795 "rx-decode.opc"
9532 ID(maclo
); SR(srca
); S2R(srcb
); F_____
;
9540 switch (op
[2] & 0xf0)
9544 /** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */
9545 #line 798 "rx-decode.opc"
9546 int rsrc AU
= op
[2] & 0x0f;
9549 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9550 "/** 1111 1101 0001 0111 0000 rsrc mvtachi %1 */",
9551 op
[0], op
[1], op
[2]);
9552 printf (" rsrc = 0x%x\n", rsrc
);
9554 SYNTAX("mvtachi %1");
9555 #line 798 "rx-decode.opc"
9556 ID(mvtachi
); SR(rsrc
); F_____
;
9562 /** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */
9563 #line 801 "rx-decode.opc"
9564 int rsrc AU
= op
[2] & 0x0f;
9567 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9568 "/** 1111 1101 0001 0111 0001 rsrc mvtaclo %1 */",
9569 op
[0], op
[1], op
[2]);
9570 printf (" rsrc = 0x%x\n", rsrc
);
9572 SYNTAX("mvtaclo %1");
9573 #line 801 "rx-decode.opc"
9574 ID(mvtaclo
); SR(rsrc
); F_____
;
9578 default: UNSUPPORTED(); break;
9583 switch (op
[2] & 0xef)
9587 /** 1111 1101 0001 1000 000i 0000 racw #%1 */
9588 #line 813 "rx-decode.opc"
9589 int i AU
= (op
[2] >> 4) & 0x01;
9592 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9593 "/** 1111 1101 0001 1000 000i 0000 racw #%1 */",
9594 op
[0], op
[1], op
[2]);
9595 printf (" i = 0x%x\n", i
);
9598 #line 813 "rx-decode.opc"
9599 ID(racw
); SC(i
+1); F_____
;
9601 /*----------------------------------------------------------------------*/
9606 default: UNSUPPORTED(); break;
9611 switch (op
[2] & 0xf0)
9615 /** 1111 1101 0001 1111 0000 rdst mvfachi %0 */
9616 #line 804 "rx-decode.opc"
9617 int rdst AU
= op
[2] & 0x0f;
9620 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9621 "/** 1111 1101 0001 1111 0000 rdst mvfachi %0 */",
9622 op
[0], op
[1], op
[2]);
9623 printf (" rdst = 0x%x\n", rdst
);
9625 SYNTAX("mvfachi %0");
9626 #line 804 "rx-decode.opc"
9627 ID(mvfachi
); DR(rdst
); F_____
;
9633 /** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */
9634 #line 810 "rx-decode.opc"
9635 int rdst AU
= op
[2] & 0x0f;
9638 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9639 "/** 1111 1101 0001 1111 0001 rdst mvfaclo %0 */",
9640 op
[0], op
[1], op
[2]);
9641 printf (" rdst = 0x%x\n", rdst
);
9643 SYNTAX("mvfaclo %0");
9644 #line 810 "rx-decode.opc"
9645 ID(mvfaclo
); DR(rdst
); F_____
;
9651 /** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */
9652 #line 807 "rx-decode.opc"
9653 int rdst AU
= op
[2] & 0x0f;
9656 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9657 "/** 1111 1101 0001 1111 0010 rdst mvfacmi %0 */",
9658 op
[0], op
[1], op
[2]);
9659 printf (" rdst = 0x%x\n", rdst
);
9661 SYNTAX("mvfacmi %0");
9662 #line 807 "rx-decode.opc"
9663 ID(mvfacmi
); DR(rdst
); F_____
;
9667 default: UNSUPPORTED(); break;
9672 switch (op
[2] & 0x00)
9677 /** 1111 1101 0010 0p sz rdst rsrc mov%s %1, %0 */
9678 #line 320 "rx-decode.opc"
9679 int p AU
= (op
[1] >> 2) & 0x01;
9680 #line 320 "rx-decode.opc"
9681 int sz AU
= op
[1] & 0x03;
9682 #line 320 "rx-decode.opc"
9683 int rdst AU
= (op
[2] >> 4) & 0x0f;
9684 #line 320 "rx-decode.opc"
9685 int rsrc AU
= op
[2] & 0x0f;
9688 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9689 "/** 1111 1101 0010 0p sz rdst rsrc mov%s %1, %0 */",
9690 op
[0], op
[1], op
[2]);
9691 printf (" p = 0x%x,", p
);
9692 printf (" sz = 0x%x,", sz
);
9693 printf (" rdst = 0x%x,", rdst
);
9694 printf (" rsrc = 0x%x\n", rsrc
);
9696 SYNTAX("mov%s %1, %0");
9697 #line 320 "rx-decode.opc"
9698 ID(mov
); sBWL (sz
); SR(rsrc
); F_____
;
9699 OP(0, p
? RX_Operand_Predec
: RX_Operand_Postinc
, rdst
, 0);
9707 switch (op
[2] & 0x00)
9710 goto op_semantics_71
;
9716 switch (op
[2] & 0x00)
9719 goto op_semantics_71
;
9725 switch (op
[2] & 0x00)
9728 goto op_semantics_71
;
9734 switch (op
[2] & 0x00)
9737 goto op_semantics_71
;
9743 switch (op
[2] & 0x00)
9746 goto op_semantics_71
;
9752 switch (op
[2] & 0x00)
9757 /** 1111 1101 0010 1p sz rsrc rdst mov%s %1, %0 */
9758 #line 324 "rx-decode.opc"
9759 int p AU
= (op
[1] >> 2) & 0x01;
9760 #line 324 "rx-decode.opc"
9761 int sz AU
= op
[1] & 0x03;
9762 #line 324 "rx-decode.opc"
9763 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9764 #line 324 "rx-decode.opc"
9765 int rdst AU
= op
[2] & 0x0f;
9768 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9769 "/** 1111 1101 0010 1p sz rsrc rdst mov%s %1, %0 */",
9770 op
[0], op
[1], op
[2]);
9771 printf (" p = 0x%x,", p
);
9772 printf (" sz = 0x%x,", sz
);
9773 printf (" rsrc = 0x%x,", rsrc
);
9774 printf (" rdst = 0x%x\n", rdst
);
9776 SYNTAX("mov%s %1, %0");
9777 #line 324 "rx-decode.opc"
9778 ID(mov
); sBWL (sz
); DR(rdst
); F_____
;
9779 OP(1, p
? RX_Operand_Predec
: RX_Operand_Postinc
, rsrc
, 0);
9787 switch (op
[2] & 0x00)
9790 goto op_semantics_72
;
9796 switch (op
[2] & 0x00)
9799 goto op_semantics_72
;
9805 switch (op
[2] & 0x00)
9808 goto op_semantics_72
;
9814 switch (op
[2] & 0x00)
9817 goto op_semantics_72
;
9823 switch (op
[2] & 0x00)
9826 goto op_semantics_72
;
9832 switch (op
[2] & 0x00)
9837 /** 1111 1101 0011 1p sz rsrc rdst movu%s %1, %0 */
9838 #line 334 "rx-decode.opc"
9839 int p AU
= (op
[1] >> 2) & 0x01;
9840 #line 334 "rx-decode.opc"
9841 int sz AU
= op
[1] & 0x03;
9842 #line 334 "rx-decode.opc"
9843 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9844 #line 334 "rx-decode.opc"
9845 int rdst AU
= op
[2] & 0x0f;
9848 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9849 "/** 1111 1101 0011 1p sz rsrc rdst movu%s %1, %0 */",
9850 op
[0], op
[1], op
[2]);
9851 printf (" p = 0x%x,", p
);
9852 printf (" sz = 0x%x,", sz
);
9853 printf (" rsrc = 0x%x,", rsrc
);
9854 printf (" rdst = 0x%x\n", rdst
);
9856 SYNTAX("movu%s %1, %0");
9857 #line 334 "rx-decode.opc"
9858 ID(mov
); uBWL (sz
); DR(rdst
); F_____
;
9859 OP(1, p
? RX_Operand_Predec
: RX_Operand_Postinc
, rsrc
, 0);
9861 /*----------------------------------------------------------------------*/
9870 switch (op
[2] & 0x00)
9873 goto op_semantics_73
;
9879 switch (op
[2] & 0x00)
9882 goto op_semantics_73
;
9888 switch (op
[2] & 0x00)
9891 goto op_semantics_73
;
9897 switch (op
[2] & 0x00)
9900 goto op_semantics_73
;
9906 switch (op
[2] & 0x00)
9909 goto op_semantics_73
;
9915 switch (op
[2] & 0x00)
9919 /** 1111 1101 0110 0000 rsrc rdst shlr %2, %0 */
9920 #line 667 "rx-decode.opc"
9921 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9922 #line 667 "rx-decode.opc"
9923 int rdst AU
= op
[2] & 0x0f;
9926 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9927 "/** 1111 1101 0110 0000 rsrc rdst shlr %2, %0 */",
9928 op
[0], op
[1], op
[2]);
9929 printf (" rsrc = 0x%x,", rsrc
);
9930 printf (" rdst = 0x%x\n", rdst
);
9932 SYNTAX("shlr %2, %0");
9933 #line 667 "rx-decode.opc"
9934 ID(shlr
); S2R(rsrc
); SR(rdst
); DR(rdst
); F__SZC
;
9942 switch (op
[2] & 0x00)
9946 /** 1111 1101 0110 0001 rsrc rdst shar %2, %0 */
9947 #line 657 "rx-decode.opc"
9948 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9949 #line 657 "rx-decode.opc"
9950 int rdst AU
= op
[2] & 0x0f;
9953 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9954 "/** 1111 1101 0110 0001 rsrc rdst shar %2, %0 */",
9955 op
[0], op
[1], op
[2]);
9956 printf (" rsrc = 0x%x,", rsrc
);
9957 printf (" rdst = 0x%x\n", rdst
);
9959 SYNTAX("shar %2, %0");
9960 #line 657 "rx-decode.opc"
9961 ID(shar
); S2R(rsrc
); SR(rdst
); DR(rdst
); F_0SZC
;
9969 switch (op
[2] & 0x00)
9973 /** 1111 1101 0110 0010 rsrc rdst shll %2, %0 */
9974 #line 647 "rx-decode.opc"
9975 int rsrc AU
= (op
[2] >> 4) & 0x0f;
9976 #line 647 "rx-decode.opc"
9977 int rdst AU
= op
[2] & 0x0f;
9980 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
9981 "/** 1111 1101 0110 0010 rsrc rdst shll %2, %0 */",
9982 op
[0], op
[1], op
[2]);
9983 printf (" rsrc = 0x%x,", rsrc
);
9984 printf (" rdst = 0x%x\n", rdst
);
9986 SYNTAX("shll %2, %0");
9987 #line 647 "rx-decode.opc"
9988 ID(shll
); S2R(rsrc
); SR(rdst
); DR(rdst
); F_OSZC
;
9996 switch (op
[2] & 0x00)
10000 /** 1111 1101 0110 0100 rsrc rdst rotr %1, %0 */
10001 #line 691 "rx-decode.opc"
10002 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10003 #line 691 "rx-decode.opc"
10004 int rdst AU
= op
[2] & 0x0f;
10007 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10008 "/** 1111 1101 0110 0100 rsrc rdst rotr %1, %0 */",
10009 op
[0], op
[1], op
[2]);
10010 printf (" rsrc = 0x%x,", rsrc
);
10011 printf (" rdst = 0x%x\n", rdst
);
10013 SYNTAX("rotr %1, %0");
10014 #line 691 "rx-decode.opc"
10015 ID(rotr
); SR(rsrc
); DR(rdst
); F__SZC
;
10023 switch (op
[2] & 0x00)
10027 /** 1111 1101 0110 0101 rsrc rdst revw %1, %0 */
10028 #line 694 "rx-decode.opc"
10029 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10030 #line 694 "rx-decode.opc"
10031 int rdst AU
= op
[2] & 0x0f;
10034 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10035 "/** 1111 1101 0110 0101 rsrc rdst revw %1, %0 */",
10036 op
[0], op
[1], op
[2]);
10037 printf (" rsrc = 0x%x,", rsrc
);
10038 printf (" rdst = 0x%x\n", rdst
);
10040 SYNTAX("revw %1, %0");
10041 #line 694 "rx-decode.opc"
10042 ID(revw
); SR(rsrc
); DR(rdst
);
10050 switch (op
[2] & 0x00)
10054 /** 1111 1101 0110 0110 rsrc rdst rotl %1, %0 */
10055 #line 685 "rx-decode.opc"
10056 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10057 #line 685 "rx-decode.opc"
10058 int rdst AU
= op
[2] & 0x0f;
10061 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10062 "/** 1111 1101 0110 0110 rsrc rdst rotl %1, %0 */",
10063 op
[0], op
[1], op
[2]);
10064 printf (" rsrc = 0x%x,", rsrc
);
10065 printf (" rdst = 0x%x\n", rdst
);
10067 SYNTAX("rotl %1, %0");
10068 #line 685 "rx-decode.opc"
10069 ID(rotl
); SR(rsrc
); DR(rdst
); F__SZC
;
10077 switch (op
[2] & 0x00)
10081 /** 1111 1101 0110 0111 rsrc rdst revl %1, %0 */
10082 #line 697 "rx-decode.opc"
10083 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10084 #line 697 "rx-decode.opc"
10085 int rdst AU
= op
[2] & 0x0f;
10088 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10089 "/** 1111 1101 0110 0111 rsrc rdst revl %1, %0 */",
10090 op
[0], op
[1], op
[2]);
10091 printf (" rsrc = 0x%x,", rsrc
);
10092 printf (" rdst = 0x%x\n", rdst
);
10094 SYNTAX("revl %1, %0");
10095 #line 697 "rx-decode.opc"
10096 ID(revl
); SR(rsrc
); DR(rdst
);
10098 /*----------------------------------------------------------------------*/
10107 switch (op
[2] & 0x00)
10112 /** 1111 1101 0110 100c rsrc rdst mvtc %1, %0 */
10113 #line 940 "rx-decode.opc"
10114 int c AU
= op
[1] & 0x01;
10115 #line 940 "rx-decode.opc"
10116 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10117 #line 940 "rx-decode.opc"
10118 int rdst AU
= op
[2] & 0x0f;
10121 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10122 "/** 1111 1101 0110 100c rsrc rdst mvtc %1, %0 */",
10123 op
[0], op
[1], op
[2]);
10124 printf (" c = 0x%x,", c
);
10125 printf (" rsrc = 0x%x,", rsrc
);
10126 printf (" rdst = 0x%x\n", rdst
);
10128 SYNTAX("mvtc %1, %0");
10129 #line 940 "rx-decode.opc"
10130 ID(mov
); SR(rsrc
); DR(c
*16+rdst
+ 16);
10138 switch (op
[2] & 0x00)
10141 goto op_semantics_74
;
10147 switch (op
[2] & 0x00)
10152 /** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */
10153 #line 943 "rx-decode.opc"
10154 int s AU
= op
[1] & 0x01;
10155 #line 943 "rx-decode.opc"
10156 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10157 #line 943 "rx-decode.opc"
10158 int rdst AU
= op
[2] & 0x0f;
10161 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10162 "/** 1111 1101 0110 101s rsrc rdst mvfc %1, %0 */",
10163 op
[0], op
[1], op
[2]);
10164 printf (" s = 0x%x,", s
);
10165 printf (" rsrc = 0x%x,", rsrc
);
10166 printf (" rdst = 0x%x\n", rdst
);
10168 SYNTAX("mvfc %1, %0");
10169 #line 943 "rx-decode.opc"
10170 ID(mov
); SR((s
*16+rsrc
) + 16); DR(rdst
);
10172 /*----------------------------------------------------------------------*/
10181 switch (op
[2] & 0x00)
10184 goto op_semantics_75
;
10190 switch (op
[2] & 0x00)
10195 /** 1111 1101 0110 110i mmmm rdst rotr #%1, %0 */
10196 #line 688 "rx-decode.opc"
10197 int i AU
= op
[1] & 0x01;
10198 #line 688 "rx-decode.opc"
10199 int mmmm AU
= (op
[2] >> 4) & 0x0f;
10200 #line 688 "rx-decode.opc"
10201 int rdst AU
= op
[2] & 0x0f;
10204 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10205 "/** 1111 1101 0110 110i mmmm rdst rotr #%1, %0 */",
10206 op
[0], op
[1], op
[2]);
10207 printf (" i = 0x%x,", i
);
10208 printf (" mmmm = 0x%x,", mmmm
);
10209 printf (" rdst = 0x%x\n", rdst
);
10211 SYNTAX("rotr #%1, %0");
10212 #line 688 "rx-decode.opc"
10213 ID(rotr
); SC(i
*16+mmmm
); DR(rdst
); F__SZC
;
10221 switch (op
[2] & 0x00)
10224 goto op_semantics_76
;
10230 switch (op
[2] & 0x00)
10235 /** 1111 1101 0110 111i mmmm rdst rotl #%1, %0 */
10236 #line 682 "rx-decode.opc"
10237 int i AU
= op
[1] & 0x01;
10238 #line 682 "rx-decode.opc"
10239 int mmmm AU
= (op
[2] >> 4) & 0x0f;
10240 #line 682 "rx-decode.opc"
10241 int rdst AU
= op
[2] & 0x0f;
10244 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10245 "/** 1111 1101 0110 111i mmmm rdst rotl #%1, %0 */",
10246 op
[0], op
[1], op
[2]);
10247 printf (" i = 0x%x,", i
);
10248 printf (" mmmm = 0x%x,", mmmm
);
10249 printf (" rdst = 0x%x\n", rdst
);
10251 SYNTAX("rotl #%1, %0");
10252 #line 682 "rx-decode.opc"
10253 ID(rotl
); SC(i
*16+mmmm
); DR(rdst
); F__SZC
;
10261 switch (op
[2] & 0x00)
10264 goto op_semantics_77
;
10270 switch (op
[2] & 0xf0)
10275 /** 1111 1101 0111 im00 0010rdst adc #%1, %0 */
10276 #line 464 "rx-decode.opc"
10277 int im AU
= (op
[1] >> 2) & 0x03;
10278 #line 464 "rx-decode.opc"
10279 int rdst AU
= op
[2] & 0x0f;
10282 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10283 "/** 1111 1101 0111 im00 0010rdst adc #%1, %0 */",
10284 op
[0], op
[1], op
[2]);
10285 printf (" im = 0x%x,", im
);
10286 printf (" rdst = 0x%x\n", rdst
);
10288 SYNTAX("adc #%1, %0");
10289 #line 464 "rx-decode.opc"
10290 ID(adc
); SC(IMMex(im
)); DR(rdst
); F_OSZC
;
10297 /** 1111 1101 0111 im00 0100rdst max #%1, %0 */
10298 #line 546 "rx-decode.opc"
10299 int im AU
= (op
[1] >> 2) & 0x03;
10300 #line 546 "rx-decode.opc"
10301 int rdst AU
= op
[2] & 0x0f;
10304 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10305 "/** 1111 1101 0111 im00 0100rdst max #%1, %0 */",
10306 op
[0], op
[1], op
[2]);
10307 printf (" im = 0x%x,", im
);
10308 printf (" rdst = 0x%x\n", rdst
);
10310 SYNTAX("max #%1, %0");
10311 #line 546 "rx-decode.opc"
10312 ID(max
); DR(rdst
); SC(IMMex(im
));
10319 /** 1111 1101 0111 im00 0101rdst min #%1, %0 */
10320 #line 566 "rx-decode.opc"
10321 int im AU
= (op
[1] >> 2) & 0x03;
10322 #line 566 "rx-decode.opc"
10323 int rdst AU
= op
[2] & 0x0f;
10326 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10327 "/** 1111 1101 0111 im00 0101rdst min #%1, %0 */",
10328 op
[0], op
[1], op
[2]);
10329 printf (" im = 0x%x,", im
);
10330 printf (" rdst = 0x%x\n", rdst
);
10332 SYNTAX("min #%1, %0");
10333 #line 566 "rx-decode.opc"
10334 ID(min
); DR(rdst
); SC(IMMex(im
));
10341 /** 1111 1101 0111 im00 0110rdst emul #%1, %0 */
10342 #line 596 "rx-decode.opc"
10343 int im AU
= (op
[1] >> 2) & 0x03;
10344 #line 596 "rx-decode.opc"
10345 int rdst AU
= op
[2] & 0x0f;
10348 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10349 "/** 1111 1101 0111 im00 0110rdst emul #%1, %0 */",
10350 op
[0], op
[1], op
[2]);
10351 printf (" im = 0x%x,", im
);
10352 printf (" rdst = 0x%x\n", rdst
);
10354 SYNTAX("emul #%1, %0");
10355 #line 596 "rx-decode.opc"
10356 ID(emul
); DR(rdst
); SC(IMMex(im
));
10363 /** 1111 1101 0111 im00 0111rdst emulu #%1, %0 */
10364 #line 608 "rx-decode.opc"
10365 int im AU
= (op
[1] >> 2) & 0x03;
10366 #line 608 "rx-decode.opc"
10367 int rdst AU
= op
[2] & 0x0f;
10370 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10371 "/** 1111 1101 0111 im00 0111rdst emulu #%1, %0 */",
10372 op
[0], op
[1], op
[2]);
10373 printf (" im = 0x%x,", im
);
10374 printf (" rdst = 0x%x\n", rdst
);
10376 SYNTAX("emulu #%1, %0");
10377 #line 608 "rx-decode.opc"
10378 ID(emulu
); DR(rdst
); SC(IMMex(im
));
10385 /** 1111 1101 0111 im00 1000rdst div #%1, %0 */
10386 #line 620 "rx-decode.opc"
10387 int im AU
= (op
[1] >> 2) & 0x03;
10388 #line 620 "rx-decode.opc"
10389 int rdst AU
= op
[2] & 0x0f;
10392 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10393 "/** 1111 1101 0111 im00 1000rdst div #%1, %0 */",
10394 op
[0], op
[1], op
[2]);
10395 printf (" im = 0x%x,", im
);
10396 printf (" rdst = 0x%x\n", rdst
);
10398 SYNTAX("div #%1, %0");
10399 #line 620 "rx-decode.opc"
10400 ID(div
); DR(rdst
); SC(IMMex(im
)); F_O___
;
10407 /** 1111 1101 0111 im00 1001rdst divu #%1, %0 */
10408 #line 632 "rx-decode.opc"
10409 int im AU
= (op
[1] >> 2) & 0x03;
10410 #line 632 "rx-decode.opc"
10411 int rdst AU
= op
[2] & 0x0f;
10414 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10415 "/** 1111 1101 0111 im00 1001rdst divu #%1, %0 */",
10416 op
[0], op
[1], op
[2]);
10417 printf (" im = 0x%x,", im
);
10418 printf (" rdst = 0x%x\n", rdst
);
10420 SYNTAX("divu #%1, %0");
10421 #line 632 "rx-decode.opc"
10422 ID(divu
); DR(rdst
); SC(IMMex(im
)); F_O___
;
10429 /** 1111 1101 0111 im00 1100rdst tst #%1, %2 */
10430 #line 443 "rx-decode.opc"
10431 int im AU
= (op
[1] >> 2) & 0x03;
10432 #line 443 "rx-decode.opc"
10433 int rdst AU
= op
[2] & 0x0f;
10436 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10437 "/** 1111 1101 0111 im00 1100rdst tst #%1, %2 */",
10438 op
[0], op
[1], op
[2]);
10439 printf (" im = 0x%x,", im
);
10440 printf (" rdst = 0x%x\n", rdst
);
10442 SYNTAX("tst #%1, %2");
10443 #line 443 "rx-decode.opc"
10444 ID(and); SC(IMMex(im
)); S2R(rdst
); F__SZ_
;
10451 /** 1111 1101 0111 im00 1101rdst xor #%1, %0 */
10452 #line 422 "rx-decode.opc"
10453 int im AU
= (op
[1] >> 2) & 0x03;
10454 #line 422 "rx-decode.opc"
10455 int rdst AU
= op
[2] & 0x0f;
10458 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10459 "/** 1111 1101 0111 im00 1101rdst xor #%1, %0 */",
10460 op
[0], op
[1], op
[2]);
10461 printf (" im = 0x%x,", im
);
10462 printf (" rdst = 0x%x\n", rdst
);
10464 SYNTAX("xor #%1, %0");
10465 #line 422 "rx-decode.opc"
10466 ID(xor); SC(IMMex(im
)); DR(rdst
); F__SZ_
;
10473 /** 1111 1101 0111 im00 1110rdst stz #%1, %0 */
10474 #line 368 "rx-decode.opc"
10475 int im AU
= (op
[1] >> 2) & 0x03;
10476 #line 368 "rx-decode.opc"
10477 int rdst AU
= op
[2] & 0x0f;
10480 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10481 "/** 1111 1101 0111 im00 1110rdst stz #%1, %0 */",
10482 op
[0], op
[1], op
[2]);
10483 printf (" im = 0x%x,", im
);
10484 printf (" rdst = 0x%x\n", rdst
);
10486 SYNTAX("stz #%1, %0");
10487 #line 368 "rx-decode.opc"
10488 ID(stcc
); SC(IMMex(im
)); DR(rdst
); S2cc(RXC_z
);
10495 /** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */
10496 #line 371 "rx-decode.opc"
10497 int im AU
= (op
[1] >> 2) & 0x03;
10498 #line 371 "rx-decode.opc"
10499 int rdst AU
= op
[2] & 0x0f;
10502 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10503 "/** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */",
10504 op
[0], op
[1], op
[2]);
10505 printf (" im = 0x%x,", im
);
10506 printf (" rdst = 0x%x\n", rdst
);
10508 SYNTAX("stnz #%1, %0");
10509 #line 371 "rx-decode.opc"
10510 ID(stcc
); SC(IMMex(im
)); DR(rdst
); S2cc(RXC_nz
);
10512 /*----------------------------------------------------------------------*/
10517 default: UNSUPPORTED(); break;
10522 switch (op
[2] & 0xf0)
10526 /** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */
10527 #line 840 "rx-decode.opc"
10528 int rdst AU
= op
[2] & 0x0f;
10531 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10532 "/** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */",
10533 op
[0], op
[1], op
[2]);
10534 printf (" rdst = 0x%x\n", rdst
);
10536 SYNTAX("fsub #%1, %0");
10537 #line 840 "rx-decode.opc"
10538 ID(fsub
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10544 /** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */
10545 #line 834 "rx-decode.opc"
10546 int rdst AU
= op
[2] & 0x0f;
10549 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10550 "/** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */",
10551 op
[0], op
[1], op
[2]);
10552 printf (" rdst = 0x%x\n", rdst
);
10554 SYNTAX("fcmp #%1, %0");
10555 #line 834 "rx-decode.opc"
10556 ID(fcmp
); DR(rdst
); SC(IMM(0)); F_OSZ_
;
10562 /** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */
10563 #line 828 "rx-decode.opc"
10564 int rdst AU
= op
[2] & 0x0f;
10567 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10568 "/** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */",
10569 op
[0], op
[1], op
[2]);
10570 printf (" rdst = 0x%x\n", rdst
);
10572 SYNTAX("fadd #%1, %0");
10573 #line 828 "rx-decode.opc"
10574 ID(fadd
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10580 /** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */
10581 #line 849 "rx-decode.opc"
10582 int rdst AU
= op
[2] & 0x0f;
10585 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10586 "/** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */",
10587 op
[0], op
[1], op
[2]);
10588 printf (" rdst = 0x%x\n", rdst
);
10590 SYNTAX("fmul #%1, %0");
10591 #line 849 "rx-decode.opc"
10592 ID(fmul
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10598 /** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */
10599 #line 855 "rx-decode.opc"
10600 int rdst AU
= op
[2] & 0x0f;
10603 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10604 "/** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */",
10605 op
[0], op
[1], op
[2]);
10606 printf (" rdst = 0x%x\n", rdst
);
10608 SYNTAX("fdiv #%1, %0");
10609 #line 855 "rx-decode.opc"
10610 ID(fdiv
); DR(rdst
); SC(IMM(0)); F__SZ_
;
10614 default: UNSUPPORTED(); break;
10619 switch (op
[2] & 0xe0)
10624 /** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */
10625 #line 937 "rx-decode.opc"
10626 int im AU
= (op
[1] >> 2) & 0x03;
10627 #line 937 "rx-decode.opc"
10628 int crdst AU
= op
[2] & 0x1f;
10631 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10632 "/** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */",
10633 op
[0], op
[1], op
[2]);
10634 printf (" im = 0x%x,", im
);
10635 printf (" crdst = 0x%x\n", crdst
);
10637 SYNTAX("mvtc #%1, %0");
10638 #line 937 "rx-decode.opc"
10639 ID(mov
); SC(IMMex(im
)); DR(crdst
+ 16);
10643 default: UNSUPPORTED(); break;
10648 switch (op
[2] & 0xf0)
10651 goto op_semantics_78
;
10654 goto op_semantics_79
;
10657 goto op_semantics_80
;
10660 goto op_semantics_81
;
10663 goto op_semantics_82
;
10666 goto op_semantics_83
;
10669 goto op_semantics_84
;
10672 goto op_semantics_85
;
10675 goto op_semantics_86
;
10678 goto op_semantics_87
;
10681 goto op_semantics_88
;
10683 default: UNSUPPORTED(); break;
10688 switch (op
[2] & 0xe0)
10691 goto op_semantics_89
;
10693 default: UNSUPPORTED(); break;
10698 switch (op
[2] & 0xf0)
10701 goto op_semantics_78
;
10704 goto op_semantics_79
;
10707 goto op_semantics_80
;
10710 goto op_semantics_81
;
10713 goto op_semantics_82
;
10716 goto op_semantics_83
;
10719 goto op_semantics_84
;
10722 goto op_semantics_85
;
10725 goto op_semantics_86
;
10728 goto op_semantics_87
;
10731 goto op_semantics_88
;
10733 default: UNSUPPORTED(); break;
10738 switch (op
[2] & 0xe0)
10741 goto op_semantics_89
;
10743 default: UNSUPPORTED(); break;
10748 switch (op
[2] & 0xf0)
10751 goto op_semantics_78
;
10754 goto op_semantics_79
;
10757 goto op_semantics_80
;
10760 goto op_semantics_81
;
10763 goto op_semantics_82
;
10766 goto op_semantics_83
;
10769 goto op_semantics_84
;
10772 goto op_semantics_85
;
10775 goto op_semantics_86
;
10778 goto op_semantics_87
;
10781 goto op_semantics_88
;
10783 default: UNSUPPORTED(); break;
10788 switch (op
[2] & 0xe0)
10791 goto op_semantics_89
;
10793 default: UNSUPPORTED(); break;
10798 switch (op
[2] & 0x00)
10803 /** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */
10804 #line 670 "rx-decode.opc"
10805 int immmm AU
= op
[1] & 0x1f;
10806 #line 670 "rx-decode.opc"
10807 int rsrc AU
= (op
[2] >> 4) & 0x0f;
10808 #line 670 "rx-decode.opc"
10809 int rdst AU
= op
[2] & 0x0f;
10812 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
10813 "/** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */",
10814 op
[0], op
[1], op
[2]);
10815 printf (" immmm = 0x%x,", immmm
);
10816 printf (" rsrc = 0x%x,", rsrc
);
10817 printf (" rdst = 0x%x\n", rdst
);
10819 SYNTAX("shlr #%2, %1, %0");
10820 #line 670 "rx-decode.opc"
10821 ID(shlr
); S2C(immmm
); SR(rsrc
); DR(rdst
); F__SZC
;
10823 /*----------------------------------------------------------------------*/
10832 switch (op
[2] & 0x00)
10835 goto op_semantics_90
;
10841 switch (op
[2] & 0x00)
10844 goto op_semantics_90
;
10850 switch (op
[2] & 0x00)
10853 goto op_semantics_90
;
10859 switch (op
[2] & 0x00)
10862 goto op_semantics_90
;
10868 switch (op
[2] & 0x00)
10871 goto op_semantics_90
;
10877 switch (op
[2] & 0x00)
10880 goto op_semantics_90
;
10886 switch (op
[2] & 0x00)
10889 goto op_semantics_90
;
10895 switch (op
[2] & 0x00)
10898 goto op_semantics_90
;
10904 switch (op
[2] & 0x00)
10907 goto op_semantics_90
;
10913 switch (op
[2] & 0x00)
10916 goto op_semantics_90
;
10922 switch (op
[2] & 0x00)
10925 goto op_semantics_90
;
10931 switch (op
[2] & 0x00)
10934 goto op_semantics_90
;
10940 switch (op
[2] & 0x00)
10943 goto op_semantics_90
;
10949 switch (op
[2] & 0x00)
10952 goto op_semantics_90
;
10958 switch (op
[2] & 0x00)
10961 goto op_semantics_90
;
10967 switch (op
[2] & 0x00)
10970 goto op_semantics_90
;
10976 switch (op
[2] & 0x00)
10979 goto op_semantics_90
;
10985 switch (op
[2] & 0x00)
10988 goto op_semantics_90
;
10994 switch (op
[2] & 0x00)
10997 goto op_semantics_90
;
11003 switch (op
[2] & 0x00)
11006 goto op_semantics_90
;
11012 switch (op
[2] & 0x00)
11015 goto op_semantics_90
;
11021 switch (op
[2] & 0x00)
11024 goto op_semantics_90
;
11030 switch (op
[2] & 0x00)
11033 goto op_semantics_90
;
11039 switch (op
[2] & 0x00)
11042 goto op_semantics_90
;
11048 switch (op
[2] & 0x00)
11051 goto op_semantics_90
;
11057 switch (op
[2] & 0x00)
11060 goto op_semantics_90
;
11066 switch (op
[2] & 0x00)
11069 goto op_semantics_90
;
11075 switch (op
[2] & 0x00)
11078 goto op_semantics_90
;
11084 switch (op
[2] & 0x00)
11087 goto op_semantics_90
;
11093 switch (op
[2] & 0x00)
11096 goto op_semantics_90
;
11102 switch (op
[2] & 0x00)
11105 goto op_semantics_90
;
11111 switch (op
[2] & 0x00)
11116 /** 1111 1101 101immmm rsrc rdst shar #%2, %1, %0 */
11117 #line 660 "rx-decode.opc"
11118 int immmm AU
= op
[1] & 0x1f;
11119 #line 660 "rx-decode.opc"
11120 int rsrc AU
= (op
[2] >> 4) & 0x0f;
11121 #line 660 "rx-decode.opc"
11122 int rdst AU
= op
[2] & 0x0f;
11125 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11126 "/** 1111 1101 101immmm rsrc rdst shar #%2, %1, %0 */",
11127 op
[0], op
[1], op
[2]);
11128 printf (" immmm = 0x%x,", immmm
);
11129 printf (" rsrc = 0x%x,", rsrc
);
11130 printf (" rdst = 0x%x\n", rdst
);
11132 SYNTAX("shar #%2, %1, %0");
11133 #line 660 "rx-decode.opc"
11134 ID(shar
); S2C(immmm
); SR(rsrc
); DR(rdst
); F_0SZC
;
11143 switch (op
[2] & 0x00)
11146 goto op_semantics_91
;
11152 switch (op
[2] & 0x00)
11155 goto op_semantics_91
;
11161 switch (op
[2] & 0x00)
11164 goto op_semantics_91
;
11170 switch (op
[2] & 0x00)
11173 goto op_semantics_91
;
11179 switch (op
[2] & 0x00)
11182 goto op_semantics_91
;
11188 switch (op
[2] & 0x00)
11191 goto op_semantics_91
;
11197 switch (op
[2] & 0x00)
11200 goto op_semantics_91
;
11206 switch (op
[2] & 0x00)
11209 goto op_semantics_91
;
11215 switch (op
[2] & 0x00)
11218 goto op_semantics_91
;
11224 switch (op
[2] & 0x00)
11227 goto op_semantics_91
;
11233 switch (op
[2] & 0x00)
11236 goto op_semantics_91
;
11242 switch (op
[2] & 0x00)
11245 goto op_semantics_91
;
11251 switch (op
[2] & 0x00)
11254 goto op_semantics_91
;
11260 switch (op
[2] & 0x00)
11263 goto op_semantics_91
;
11269 switch (op
[2] & 0x00)
11272 goto op_semantics_91
;
11278 switch (op
[2] & 0x00)
11281 goto op_semantics_91
;
11287 switch (op
[2] & 0x00)
11290 goto op_semantics_91
;
11296 switch (op
[2] & 0x00)
11299 goto op_semantics_91
;
11305 switch (op
[2] & 0x00)
11308 goto op_semantics_91
;
11314 switch (op
[2] & 0x00)
11317 goto op_semantics_91
;
11323 switch (op
[2] & 0x00)
11326 goto op_semantics_91
;
11332 switch (op
[2] & 0x00)
11335 goto op_semantics_91
;
11341 switch (op
[2] & 0x00)
11344 goto op_semantics_91
;
11350 switch (op
[2] & 0x00)
11353 goto op_semantics_91
;
11359 switch (op
[2] & 0x00)
11362 goto op_semantics_91
;
11368 switch (op
[2] & 0x00)
11371 goto op_semantics_91
;
11377 switch (op
[2] & 0x00)
11380 goto op_semantics_91
;
11386 switch (op
[2] & 0x00)
11389 goto op_semantics_91
;
11395 switch (op
[2] & 0x00)
11398 goto op_semantics_91
;
11404 switch (op
[2] & 0x00)
11407 goto op_semantics_91
;
11413 switch (op
[2] & 0x00)
11416 goto op_semantics_91
;
11422 switch (op
[2] & 0x00)
11427 /** 1111 1101 110immmm rsrc rdst shll #%2, %1, %0 */
11428 #line 650 "rx-decode.opc"
11429 int immmm AU
= op
[1] & 0x1f;
11430 #line 650 "rx-decode.opc"
11431 int rsrc AU
= (op
[2] >> 4) & 0x0f;
11432 #line 650 "rx-decode.opc"
11433 int rdst AU
= op
[2] & 0x0f;
11436 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11437 "/** 1111 1101 110immmm rsrc rdst shll #%2, %1, %0 */",
11438 op
[0], op
[1], op
[2]);
11439 printf (" immmm = 0x%x,", immmm
);
11440 printf (" rsrc = 0x%x,", rsrc
);
11441 printf (" rdst = 0x%x\n", rdst
);
11443 SYNTAX("shll #%2, %1, %0");
11444 #line 650 "rx-decode.opc"
11445 ID(shll
); S2C(immmm
); SR(rsrc
); DR(rdst
); F_OSZC
;
11454 switch (op
[2] & 0x00)
11457 goto op_semantics_92
;
11463 switch (op
[2] & 0x00)
11466 goto op_semantics_92
;
11472 switch (op
[2] & 0x00)
11475 goto op_semantics_92
;
11481 switch (op
[2] & 0x00)
11484 goto op_semantics_92
;
11490 switch (op
[2] & 0x00)
11493 goto op_semantics_92
;
11499 switch (op
[2] & 0x00)
11502 goto op_semantics_92
;
11508 switch (op
[2] & 0x00)
11511 goto op_semantics_92
;
11517 switch (op
[2] & 0x00)
11520 goto op_semantics_92
;
11526 switch (op
[2] & 0x00)
11529 goto op_semantics_92
;
11535 switch (op
[2] & 0x00)
11538 goto op_semantics_92
;
11544 switch (op
[2] & 0x00)
11547 goto op_semantics_92
;
11553 switch (op
[2] & 0x00)
11556 goto op_semantics_92
;
11562 switch (op
[2] & 0x00)
11565 goto op_semantics_92
;
11571 switch (op
[2] & 0x00)
11574 goto op_semantics_92
;
11580 switch (op
[2] & 0x00)
11583 goto op_semantics_92
;
11589 switch (op
[2] & 0x00)
11592 goto op_semantics_92
;
11598 switch (op
[2] & 0x00)
11601 goto op_semantics_92
;
11607 switch (op
[2] & 0x00)
11610 goto op_semantics_92
;
11616 switch (op
[2] & 0x00)
11619 goto op_semantics_92
;
11625 switch (op
[2] & 0x00)
11628 goto op_semantics_92
;
11634 switch (op
[2] & 0x00)
11637 goto op_semantics_92
;
11643 switch (op
[2] & 0x00)
11646 goto op_semantics_92
;
11652 switch (op
[2] & 0x00)
11655 goto op_semantics_92
;
11661 switch (op
[2] & 0x00)
11664 goto op_semantics_92
;
11670 switch (op
[2] & 0x00)
11673 goto op_semantics_92
;
11679 switch (op
[2] & 0x00)
11682 goto op_semantics_92
;
11688 switch (op
[2] & 0x00)
11691 goto op_semantics_92
;
11697 switch (op
[2] & 0x00)
11700 goto op_semantics_92
;
11706 switch (op
[2] & 0x00)
11709 goto op_semantics_92
;
11715 switch (op
[2] & 0x00)
11718 goto op_semantics_92
;
11724 switch (op
[2] & 0x00)
11727 goto op_semantics_92
;
11733 switch (op
[2] & 0xf0)
11752 /** 1111 1101 111 bittt cond rdst bm%2 #%1, %0%S0 */
11753 #line 916 "rx-decode.opc"
11754 int bittt AU
= op
[1] & 0x1f;
11755 #line 916 "rx-decode.opc"
11756 int cond AU
= (op
[2] >> 4) & 0x0f;
11757 #line 916 "rx-decode.opc"
11758 int rdst AU
= op
[2] & 0x0f;
11761 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11762 "/** 1111 1101 111 bittt cond rdst bm%2 #%1, %0%S0 */",
11763 op
[0], op
[1], op
[2]);
11764 printf (" bittt = 0x%x,", bittt
);
11765 printf (" cond = 0x%x,", cond
);
11766 printf (" rdst = 0x%x\n", rdst
);
11768 SYNTAX("bm%2 #%1, %0%S0");
11769 #line 916 "rx-decode.opc"
11770 ID(bmcc
); BWL(LSIZE
); S2cc(cond
); SC(bittt
); DR(rdst
);
11772 /*----------------------------------------------------------------------*/
11773 /* CONTROL REGISTERS */
11780 /** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */
11781 #line 909 "rx-decode.opc"
11782 int bittt AU
= op
[1] & 0x1f;
11783 #line 909 "rx-decode.opc"
11784 int rdst AU
= op
[2] & 0x0f;
11787 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
11788 "/** 1111 1101 111bittt 1111 rdst bnot #%1, %0 */",
11789 op
[0], op
[1], op
[2]);
11790 printf (" bittt = 0x%x,", bittt
);
11791 printf (" rdst = 0x%x\n", rdst
);
11793 SYNTAX("bnot #%1, %0");
11794 #line 909 "rx-decode.opc"
11795 ID(bnot
); BWL(LSIZE
); SC(bittt
); DR(rdst
);
11804 switch (op
[2] & 0xf0)
11821 goto op_semantics_93
;
11824 goto op_semantics_94
;
11830 switch (op
[2] & 0xf0)
11847 goto op_semantics_93
;
11850 goto op_semantics_94
;
11856 switch (op
[2] & 0xf0)
11873 goto op_semantics_93
;
11876 goto op_semantics_94
;
11882 switch (op
[2] & 0xf0)
11899 goto op_semantics_93
;
11902 goto op_semantics_94
;
11908 switch (op
[2] & 0xf0)
11925 goto op_semantics_93
;
11928 goto op_semantics_94
;
11934 switch (op
[2] & 0xf0)
11951 goto op_semantics_93
;
11954 goto op_semantics_94
;
11960 switch (op
[2] & 0xf0)
11977 goto op_semantics_93
;
11980 goto op_semantics_94
;
11986 switch (op
[2] & 0xf0)
12003 goto op_semantics_93
;
12006 goto op_semantics_94
;
12012 switch (op
[2] & 0xf0)
12029 goto op_semantics_93
;
12032 goto op_semantics_94
;
12038 switch (op
[2] & 0xf0)
12055 goto op_semantics_93
;
12058 goto op_semantics_94
;
12064 switch (op
[2] & 0xf0)
12081 goto op_semantics_93
;
12084 goto op_semantics_94
;
12090 switch (op
[2] & 0xf0)
12107 goto op_semantics_93
;
12110 goto op_semantics_94
;
12116 switch (op
[2] & 0xf0)
12133 goto op_semantics_93
;
12136 goto op_semantics_94
;
12142 switch (op
[2] & 0xf0)
12159 goto op_semantics_93
;
12162 goto op_semantics_94
;
12168 switch (op
[2] & 0xf0)
12185 goto op_semantics_93
;
12188 goto op_semantics_94
;
12194 switch (op
[2] & 0xf0)
12211 goto op_semantics_93
;
12214 goto op_semantics_94
;
12220 switch (op
[2] & 0xf0)
12237 goto op_semantics_93
;
12240 goto op_semantics_94
;
12246 switch (op
[2] & 0xf0)
12263 goto op_semantics_93
;
12266 goto op_semantics_94
;
12272 switch (op
[2] & 0xf0)
12289 goto op_semantics_93
;
12292 goto op_semantics_94
;
12298 switch (op
[2] & 0xf0)
12315 goto op_semantics_93
;
12318 goto op_semantics_94
;
12324 switch (op
[2] & 0xf0)
12341 goto op_semantics_93
;
12344 goto op_semantics_94
;
12350 switch (op
[2] & 0xf0)
12367 goto op_semantics_93
;
12370 goto op_semantics_94
;
12376 switch (op
[2] & 0xf0)
12393 goto op_semantics_93
;
12396 goto op_semantics_94
;
12402 switch (op
[2] & 0xf0)
12419 goto op_semantics_93
;
12422 goto op_semantics_94
;
12428 switch (op
[2] & 0xf0)
12445 goto op_semantics_93
;
12448 goto op_semantics_94
;
12454 switch (op
[2] & 0xf0)
12471 goto op_semantics_93
;
12474 goto op_semantics_94
;
12480 switch (op
[2] & 0xf0)
12497 goto op_semantics_93
;
12500 goto op_semantics_94
;
12506 switch (op
[2] & 0xf0)
12523 goto op_semantics_93
;
12526 goto op_semantics_94
;
12532 switch (op
[2] & 0xf0)
12549 goto op_semantics_93
;
12552 goto op_semantics_94
;
12558 switch (op
[2] & 0xf0)
12575 goto op_semantics_93
;
12578 goto op_semantics_94
;
12584 switch (op
[2] & 0xf0)
12601 goto op_semantics_93
;
12604 goto op_semantics_94
;
12608 default: UNSUPPORTED(); break;
12613 switch (op
[1] & 0xff)
12617 switch (op
[2] & 0x00)
12622 /** 1111 1110 00sz isrc bsrc rdst mov%s %0, [%1, %2] */
12623 #line 314 "rx-decode.opc"
12624 int sz AU
= (op
[1] >> 4) & 0x03;
12625 #line 314 "rx-decode.opc"
12626 int isrc AU
= op
[1] & 0x0f;
12627 #line 314 "rx-decode.opc"
12628 int bsrc AU
= (op
[2] >> 4) & 0x0f;
12629 #line 314 "rx-decode.opc"
12630 int rdst AU
= op
[2] & 0x0f;
12633 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
12634 "/** 1111 1110 00sz isrc bsrc rdst mov%s %0, [%1, %2] */",
12635 op
[0], op
[1], op
[2]);
12636 printf (" sz = 0x%x,", sz
);
12637 printf (" isrc = 0x%x,", isrc
);
12638 printf (" bsrc = 0x%x,", bsrc
);
12639 printf (" rdst = 0x%x\n", rdst
);
12641 SYNTAX("mov%s %0, [%1, %2]");
12642 #line 314 "rx-decode.opc"
12643 ID(movbir
); sBWL(sz
); DR(rdst
); SRR(isrc
); S2R(bsrc
); F_____
;
12651 switch (op
[2] & 0x00)
12654 goto op_semantics_95
;
12660 switch (op
[2] & 0x00)
12663 goto op_semantics_95
;
12669 switch (op
[2] & 0x00)
12672 goto op_semantics_95
;
12678 switch (op
[2] & 0x00)
12681 goto op_semantics_95
;
12687 switch (op
[2] & 0x00)
12690 goto op_semantics_95
;
12696 switch (op
[2] & 0x00)
12699 goto op_semantics_95
;
12705 switch (op
[2] & 0x00)
12708 goto op_semantics_95
;
12714 switch (op
[2] & 0x00)
12717 goto op_semantics_95
;
12723 switch (op
[2] & 0x00)
12726 goto op_semantics_95
;
12732 switch (op
[2] & 0x00)
12735 goto op_semantics_95
;
12741 switch (op
[2] & 0x00)
12744 goto op_semantics_95
;
12750 switch (op
[2] & 0x00)
12753 goto op_semantics_95
;
12759 switch (op
[2] & 0x00)
12762 goto op_semantics_95
;
12768 switch (op
[2] & 0x00)
12771 goto op_semantics_95
;
12777 switch (op
[2] & 0x00)
12780 goto op_semantics_95
;
12786 switch (op
[2] & 0x00)
12789 goto op_semantics_95
;
12795 switch (op
[2] & 0x00)
12798 goto op_semantics_95
;
12804 switch (op
[2] & 0x00)
12807 goto op_semantics_95
;
12813 switch (op
[2] & 0x00)
12816 goto op_semantics_95
;
12822 switch (op
[2] & 0x00)
12825 goto op_semantics_95
;
12831 switch (op
[2] & 0x00)
12834 goto op_semantics_95
;
12840 switch (op
[2] & 0x00)
12843 goto op_semantics_95
;
12849 switch (op
[2] & 0x00)
12852 goto op_semantics_95
;
12858 switch (op
[2] & 0x00)
12861 goto op_semantics_95
;
12867 switch (op
[2] & 0x00)
12870 goto op_semantics_95
;
12876 switch (op
[2] & 0x00)
12879 goto op_semantics_95
;
12885 switch (op
[2] & 0x00)
12888 goto op_semantics_95
;
12894 switch (op
[2] & 0x00)
12897 goto op_semantics_95
;
12903 switch (op
[2] & 0x00)
12906 goto op_semantics_95
;
12912 switch (op
[2] & 0x00)
12915 goto op_semantics_95
;
12921 switch (op
[2] & 0x00)
12924 goto op_semantics_95
;
12930 switch (op
[2] & 0x00)
12933 goto op_semantics_95
;
12939 switch (op
[2] & 0x00)
12942 goto op_semantics_95
;
12948 switch (op
[2] & 0x00)
12951 goto op_semantics_95
;
12957 switch (op
[2] & 0x00)
12960 goto op_semantics_95
;
12966 switch (op
[2] & 0x00)
12969 goto op_semantics_95
;
12975 switch (op
[2] & 0x00)
12978 goto op_semantics_95
;
12984 switch (op
[2] & 0x00)
12987 goto op_semantics_95
;
12993 switch (op
[2] & 0x00)
12996 goto op_semantics_95
;
13002 switch (op
[2] & 0x00)
13005 goto op_semantics_95
;
13011 switch (op
[2] & 0x00)
13014 goto op_semantics_95
;
13020 switch (op
[2] & 0x00)
13023 goto op_semantics_95
;
13029 switch (op
[2] & 0x00)
13032 goto op_semantics_95
;
13038 switch (op
[2] & 0x00)
13041 goto op_semantics_95
;
13047 switch (op
[2] & 0x00)
13050 goto op_semantics_95
;
13056 switch (op
[2] & 0x00)
13059 goto op_semantics_95
;
13065 switch (op
[2] & 0x00)
13068 goto op_semantics_95
;
13074 switch (op
[2] & 0x00)
13079 /** 1111 1110 01sz isrc bsrc rdst mov%s [%1, %2], %0 */
13080 #line 311 "rx-decode.opc"
13081 int sz AU
= (op
[1] >> 4) & 0x03;
13082 #line 311 "rx-decode.opc"
13083 int isrc AU
= op
[1] & 0x0f;
13084 #line 311 "rx-decode.opc"
13085 int bsrc AU
= (op
[2] >> 4) & 0x0f;
13086 #line 311 "rx-decode.opc"
13087 int rdst AU
= op
[2] & 0x0f;
13090 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
13091 "/** 1111 1110 01sz isrc bsrc rdst mov%s [%1, %2], %0 */",
13092 op
[0], op
[1], op
[2]);
13093 printf (" sz = 0x%x,", sz
);
13094 printf (" isrc = 0x%x,", isrc
);
13095 printf (" bsrc = 0x%x,", bsrc
);
13096 printf (" rdst = 0x%x\n", rdst
);
13098 SYNTAX("mov%s [%1, %2], %0");
13099 #line 311 "rx-decode.opc"
13100 ID(movbi
); sBWL(sz
); DR(rdst
); SRR(isrc
); S2R(bsrc
); F_____
;
13108 switch (op
[2] & 0x00)
13111 goto op_semantics_96
;
13117 switch (op
[2] & 0x00)
13120 goto op_semantics_96
;
13126 switch (op
[2] & 0x00)
13129 goto op_semantics_96
;
13135 switch (op
[2] & 0x00)
13138 goto op_semantics_96
;
13144 switch (op
[2] & 0x00)
13147 goto op_semantics_96
;
13153 switch (op
[2] & 0x00)
13156 goto op_semantics_96
;
13162 switch (op
[2] & 0x00)
13165 goto op_semantics_96
;
13171 switch (op
[2] & 0x00)
13174 goto op_semantics_96
;
13180 switch (op
[2] & 0x00)
13183 goto op_semantics_96
;
13189 switch (op
[2] & 0x00)
13192 goto op_semantics_96
;
13198 switch (op
[2] & 0x00)
13201 goto op_semantics_96
;
13207 switch (op
[2] & 0x00)
13210 goto op_semantics_96
;
13216 switch (op
[2] & 0x00)
13219 goto op_semantics_96
;
13225 switch (op
[2] & 0x00)
13228 goto op_semantics_96
;
13234 switch (op
[2] & 0x00)
13237 goto op_semantics_96
;
13243 switch (op
[2] & 0x00)
13246 goto op_semantics_96
;
13252 switch (op
[2] & 0x00)
13255 goto op_semantics_96
;
13261 switch (op
[2] & 0x00)
13264 goto op_semantics_96
;
13270 switch (op
[2] & 0x00)
13273 goto op_semantics_96
;
13279 switch (op
[2] & 0x00)
13282 goto op_semantics_96
;
13288 switch (op
[2] & 0x00)
13291 goto op_semantics_96
;
13297 switch (op
[2] & 0x00)
13300 goto op_semantics_96
;
13306 switch (op
[2] & 0x00)
13309 goto op_semantics_96
;
13315 switch (op
[2] & 0x00)
13318 goto op_semantics_96
;
13324 switch (op
[2] & 0x00)
13327 goto op_semantics_96
;
13333 switch (op
[2] & 0x00)
13336 goto op_semantics_96
;
13342 switch (op
[2] & 0x00)
13345 goto op_semantics_96
;
13351 switch (op
[2] & 0x00)
13354 goto op_semantics_96
;
13360 switch (op
[2] & 0x00)
13363 goto op_semantics_96
;
13369 switch (op
[2] & 0x00)
13372 goto op_semantics_96
;
13378 switch (op
[2] & 0x00)
13381 goto op_semantics_96
;
13387 switch (op
[2] & 0x00)
13390 goto op_semantics_96
;
13396 switch (op
[2] & 0x00)
13399 goto op_semantics_96
;
13405 switch (op
[2] & 0x00)
13408 goto op_semantics_96
;
13414 switch (op
[2] & 0x00)
13417 goto op_semantics_96
;
13423 switch (op
[2] & 0x00)
13426 goto op_semantics_96
;
13432 switch (op
[2] & 0x00)
13435 goto op_semantics_96
;
13441 switch (op
[2] & 0x00)
13444 goto op_semantics_96
;
13450 switch (op
[2] & 0x00)
13453 goto op_semantics_96
;
13459 switch (op
[2] & 0x00)
13462 goto op_semantics_96
;
13468 switch (op
[2] & 0x00)
13471 goto op_semantics_96
;
13477 switch (op
[2] & 0x00)
13480 goto op_semantics_96
;
13486 switch (op
[2] & 0x00)
13489 goto op_semantics_96
;
13495 switch (op
[2] & 0x00)
13498 goto op_semantics_96
;
13504 switch (op
[2] & 0x00)
13507 goto op_semantics_96
;
13513 switch (op
[2] & 0x00)
13516 goto op_semantics_96
;
13522 switch (op
[2] & 0x00)
13525 goto op_semantics_96
;
13531 switch (op
[2] & 0x00)
13536 /** 1111 1110 11sz isrc bsrc rdst movu%s [%1, %2], %0 */
13537 #line 317 "rx-decode.opc"
13538 int sz AU
= (op
[1] >> 4) & 0x03;
13539 #line 317 "rx-decode.opc"
13540 int isrc AU
= op
[1] & 0x0f;
13541 #line 317 "rx-decode.opc"
13542 int bsrc AU
= (op
[2] >> 4) & 0x0f;
13543 #line 317 "rx-decode.opc"
13544 int rdst AU
= op
[2] & 0x0f;
13547 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
13548 "/** 1111 1110 11sz isrc bsrc rdst movu%s [%1, %2], %0 */",
13549 op
[0], op
[1], op
[2]);
13550 printf (" sz = 0x%x,", sz
);
13551 printf (" isrc = 0x%x,", isrc
);
13552 printf (" bsrc = 0x%x,", bsrc
);
13553 printf (" rdst = 0x%x\n", rdst
);
13555 SYNTAX("movu%s [%1, %2], %0");
13556 #line 317 "rx-decode.opc"
13557 ID(movbi
); uBWL(sz
); DR(rdst
); SRR(isrc
); S2R(bsrc
); F_____
;
13565 switch (op
[2] & 0x00)
13568 goto op_semantics_97
;
13574 switch (op
[2] & 0x00)
13577 goto op_semantics_97
;
13583 switch (op
[2] & 0x00)
13586 goto op_semantics_97
;
13592 switch (op
[2] & 0x00)
13595 goto op_semantics_97
;
13601 switch (op
[2] & 0x00)
13604 goto op_semantics_97
;
13610 switch (op
[2] & 0x00)
13613 goto op_semantics_97
;
13619 switch (op
[2] & 0x00)
13622 goto op_semantics_97
;
13628 switch (op
[2] & 0x00)
13631 goto op_semantics_97
;
13637 switch (op
[2] & 0x00)
13640 goto op_semantics_97
;
13646 switch (op
[2] & 0x00)
13649 goto op_semantics_97
;
13655 switch (op
[2] & 0x00)
13658 goto op_semantics_97
;
13664 switch (op
[2] & 0x00)
13667 goto op_semantics_97
;
13673 switch (op
[2] & 0x00)
13676 goto op_semantics_97
;
13682 switch (op
[2] & 0x00)
13685 goto op_semantics_97
;
13691 switch (op
[2] & 0x00)
13694 goto op_semantics_97
;
13700 switch (op
[2] & 0x00)
13703 goto op_semantics_97
;
13709 switch (op
[2] & 0x00)
13712 goto op_semantics_97
;
13718 switch (op
[2] & 0x00)
13721 goto op_semantics_97
;
13727 switch (op
[2] & 0x00)
13730 goto op_semantics_97
;
13736 switch (op
[2] & 0x00)
13739 goto op_semantics_97
;
13745 switch (op
[2] & 0x00)
13748 goto op_semantics_97
;
13754 switch (op
[2] & 0x00)
13757 goto op_semantics_97
;
13763 switch (op
[2] & 0x00)
13766 goto op_semantics_97
;
13772 switch (op
[2] & 0x00)
13775 goto op_semantics_97
;
13781 switch (op
[2] & 0x00)
13784 goto op_semantics_97
;
13790 switch (op
[2] & 0x00)
13793 goto op_semantics_97
;
13799 switch (op
[2] & 0x00)
13802 goto op_semantics_97
;
13808 switch (op
[2] & 0x00)
13811 goto op_semantics_97
;
13817 switch (op
[2] & 0x00)
13820 goto op_semantics_97
;
13826 switch (op
[2] & 0x00)
13829 goto op_semantics_97
;
13835 switch (op
[2] & 0x00)
13838 goto op_semantics_97
;
13844 switch (op
[2] & 0x00)
13847 goto op_semantics_97
;
13853 switch (op
[2] & 0x00)
13856 goto op_semantics_97
;
13862 switch (op
[2] & 0x00)
13865 goto op_semantics_97
;
13871 switch (op
[2] & 0x00)
13874 goto op_semantics_97
;
13880 switch (op
[2] & 0x00)
13883 goto op_semantics_97
;
13889 switch (op
[2] & 0x00)
13892 goto op_semantics_97
;
13898 switch (op
[2] & 0x00)
13901 goto op_semantics_97
;
13907 switch (op
[2] & 0x00)
13910 goto op_semantics_97
;
13916 switch (op
[2] & 0x00)
13919 goto op_semantics_97
;
13925 switch (op
[2] & 0x00)
13928 goto op_semantics_97
;
13934 switch (op
[2] & 0x00)
13937 goto op_semantics_97
;
13943 switch (op
[2] & 0x00)
13946 goto op_semantics_97
;
13952 switch (op
[2] & 0x00)
13955 goto op_semantics_97
;
13961 switch (op
[2] & 0x00)
13964 goto op_semantics_97
;
13970 switch (op
[2] & 0x00)
13973 goto op_semantics_97
;
13979 switch (op
[2] & 0x00)
13982 goto op_semantics_97
;
13986 default: UNSUPPORTED(); break;
13991 switch (op
[1] & 0xff)
13995 switch (op
[2] & 0x00)
14000 /** 1111 1111 0000 rdst srca srcb sub %2, %1, %0 */
14001 #line 521 "rx-decode.opc"
14002 int rdst AU
= op
[1] & 0x0f;
14003 #line 521 "rx-decode.opc"
14004 int srca AU
= (op
[2] >> 4) & 0x0f;
14005 #line 521 "rx-decode.opc"
14006 int srcb AU
= op
[2] & 0x0f;
14009 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14010 "/** 1111 1111 0000 rdst srca srcb sub %2, %1, %0 */",
14011 op
[0], op
[1], op
[2]);
14012 printf (" rdst = 0x%x,", rdst
);
14013 printf (" srca = 0x%x,", srca
);
14014 printf (" srcb = 0x%x\n", srcb
);
14016 SYNTAX("sub %2, %1, %0");
14017 #line 521 "rx-decode.opc"
14018 ID(sub
); DR(rdst
); SR(srcb
); S2R(srca
); F_OSZC
;
14020 /*----------------------------------------------------------------------*/
14029 switch (op
[2] & 0x00)
14032 goto op_semantics_98
;
14038 switch (op
[2] & 0x00)
14041 goto op_semantics_98
;
14047 switch (op
[2] & 0x00)
14050 goto op_semantics_98
;
14056 switch (op
[2] & 0x00)
14059 goto op_semantics_98
;
14065 switch (op
[2] & 0x00)
14068 goto op_semantics_98
;
14074 switch (op
[2] & 0x00)
14077 goto op_semantics_98
;
14083 switch (op
[2] & 0x00)
14086 goto op_semantics_98
;
14092 switch (op
[2] & 0x00)
14095 goto op_semantics_98
;
14101 switch (op
[2] & 0x00)
14104 goto op_semantics_98
;
14110 switch (op
[2] & 0x00)
14113 goto op_semantics_98
;
14119 switch (op
[2] & 0x00)
14122 goto op_semantics_98
;
14128 switch (op
[2] & 0x00)
14131 goto op_semantics_98
;
14137 switch (op
[2] & 0x00)
14140 goto op_semantics_98
;
14146 switch (op
[2] & 0x00)
14149 goto op_semantics_98
;
14155 switch (op
[2] & 0x00)
14158 goto op_semantics_98
;
14164 switch (op
[2] & 0x00)
14169 /** 1111 1111 0010 rdst srca srcb add %2, %1, %0 */
14170 #line 488 "rx-decode.opc"
14171 int rdst AU
= op
[1] & 0x0f;
14172 #line 488 "rx-decode.opc"
14173 int srca AU
= (op
[2] >> 4) & 0x0f;
14174 #line 488 "rx-decode.opc"
14175 int srcb AU
= op
[2] & 0x0f;
14178 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14179 "/** 1111 1111 0010 rdst srca srcb add %2, %1, %0 */",
14180 op
[0], op
[1], op
[2]);
14181 printf (" rdst = 0x%x,", rdst
);
14182 printf (" srca = 0x%x,", srca
);
14183 printf (" srcb = 0x%x\n", srcb
);
14185 SYNTAX("add %2, %1, %0");
14186 #line 488 "rx-decode.opc"
14187 ID(add
); DR(rdst
); SR(srcb
); S2R(srca
); F_OSZC
;
14189 /*----------------------------------------------------------------------*/
14198 switch (op
[2] & 0x00)
14201 goto op_semantics_99
;
14207 switch (op
[2] & 0x00)
14210 goto op_semantics_99
;
14216 switch (op
[2] & 0x00)
14219 goto op_semantics_99
;
14225 switch (op
[2] & 0x00)
14228 goto op_semantics_99
;
14234 switch (op
[2] & 0x00)
14237 goto op_semantics_99
;
14243 switch (op
[2] & 0x00)
14246 goto op_semantics_99
;
14252 switch (op
[2] & 0x00)
14255 goto op_semantics_99
;
14261 switch (op
[2] & 0x00)
14264 goto op_semantics_99
;
14270 switch (op
[2] & 0x00)
14273 goto op_semantics_99
;
14279 switch (op
[2] & 0x00)
14282 goto op_semantics_99
;
14288 switch (op
[2] & 0x00)
14291 goto op_semantics_99
;
14297 switch (op
[2] & 0x00)
14300 goto op_semantics_99
;
14306 switch (op
[2] & 0x00)
14309 goto op_semantics_99
;
14315 switch (op
[2] & 0x00)
14318 goto op_semantics_99
;
14324 switch (op
[2] & 0x00)
14327 goto op_semantics_99
;
14333 switch (op
[2] & 0x00)
14338 /** 1111 1111 0011 rdst srca srcb mul %2, %1, %0 */
14339 #line 590 "rx-decode.opc"
14340 int rdst AU
= op
[1] & 0x0f;
14341 #line 590 "rx-decode.opc"
14342 int srca AU
= (op
[2] >> 4) & 0x0f;
14343 #line 590 "rx-decode.opc"
14344 int srcb AU
= op
[2] & 0x0f;
14347 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14348 "/** 1111 1111 0011 rdst srca srcb mul %2, %1, %0 */",
14349 op
[0], op
[1], op
[2]);
14350 printf (" rdst = 0x%x,", rdst
);
14351 printf (" srca = 0x%x,", srca
);
14352 printf (" srcb = 0x%x\n", srcb
);
14354 SYNTAX("mul %2, %1, %0");
14355 #line 590 "rx-decode.opc"
14356 ID(mul
); DR(rdst
); SR(srcb
); S2R(srca
); F_____
;
14358 /*----------------------------------------------------------------------*/
14367 switch (op
[2] & 0x00)
14370 goto op_semantics_100
;
14376 switch (op
[2] & 0x00)
14379 goto op_semantics_100
;
14385 switch (op
[2] & 0x00)
14388 goto op_semantics_100
;
14394 switch (op
[2] & 0x00)
14397 goto op_semantics_100
;
14403 switch (op
[2] & 0x00)
14406 goto op_semantics_100
;
14412 switch (op
[2] & 0x00)
14415 goto op_semantics_100
;
14421 switch (op
[2] & 0x00)
14424 goto op_semantics_100
;
14430 switch (op
[2] & 0x00)
14433 goto op_semantics_100
;
14439 switch (op
[2] & 0x00)
14442 goto op_semantics_100
;
14448 switch (op
[2] & 0x00)
14451 goto op_semantics_100
;
14457 switch (op
[2] & 0x00)
14460 goto op_semantics_100
;
14466 switch (op
[2] & 0x00)
14469 goto op_semantics_100
;
14475 switch (op
[2] & 0x00)
14478 goto op_semantics_100
;
14484 switch (op
[2] & 0x00)
14487 goto op_semantics_100
;
14493 switch (op
[2] & 0x00)
14496 goto op_semantics_100
;
14502 switch (op
[2] & 0x00)
14507 /** 1111 1111 0100 rdst srca srcb and %2, %1, %0 */
14508 #line 398 "rx-decode.opc"
14509 int rdst AU
= op
[1] & 0x0f;
14510 #line 398 "rx-decode.opc"
14511 int srca AU
= (op
[2] >> 4) & 0x0f;
14512 #line 398 "rx-decode.opc"
14513 int srcb AU
= op
[2] & 0x0f;
14516 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14517 "/** 1111 1111 0100 rdst srca srcb and %2, %1, %0 */",
14518 op
[0], op
[1], op
[2]);
14519 printf (" rdst = 0x%x,", rdst
);
14520 printf (" srca = 0x%x,", srca
);
14521 printf (" srcb = 0x%x\n", srcb
);
14523 SYNTAX("and %2, %1, %0");
14524 #line 398 "rx-decode.opc"
14525 ID(and); DR(rdst
); SR(srcb
); S2R(srca
); F__SZ_
;
14527 /*----------------------------------------------------------------------*/
14536 switch (op
[2] & 0x00)
14539 goto op_semantics_101
;
14545 switch (op
[2] & 0x00)
14548 goto op_semantics_101
;
14554 switch (op
[2] & 0x00)
14557 goto op_semantics_101
;
14563 switch (op
[2] & 0x00)
14566 goto op_semantics_101
;
14572 switch (op
[2] & 0x00)
14575 goto op_semantics_101
;
14581 switch (op
[2] & 0x00)
14584 goto op_semantics_101
;
14590 switch (op
[2] & 0x00)
14593 goto op_semantics_101
;
14599 switch (op
[2] & 0x00)
14602 goto op_semantics_101
;
14608 switch (op
[2] & 0x00)
14611 goto op_semantics_101
;
14617 switch (op
[2] & 0x00)
14620 goto op_semantics_101
;
14626 switch (op
[2] & 0x00)
14629 goto op_semantics_101
;
14635 switch (op
[2] & 0x00)
14638 goto op_semantics_101
;
14644 switch (op
[2] & 0x00)
14647 goto op_semantics_101
;
14653 switch (op
[2] & 0x00)
14656 goto op_semantics_101
;
14662 switch (op
[2] & 0x00)
14665 goto op_semantics_101
;
14671 switch (op
[2] & 0x00)
14676 /** 1111 1111 0101 rdst srca srcb or %2, %1, %0 */
14677 #line 416 "rx-decode.opc"
14678 int rdst AU
= op
[1] & 0x0f;
14679 #line 416 "rx-decode.opc"
14680 int srca AU
= (op
[2] >> 4) & 0x0f;
14681 #line 416 "rx-decode.opc"
14682 int srcb AU
= op
[2] & 0x0f;
14685 printf ("\033[33m%s\033[0m %02x %02x %02x\n",
14686 "/** 1111 1111 0101 rdst srca srcb or %2, %1, %0 */",
14687 op
[0], op
[1], op
[2]);
14688 printf (" rdst = 0x%x,", rdst
);
14689 printf (" srca = 0x%x,", srca
);
14690 printf (" srcb = 0x%x\n", srcb
);
14692 SYNTAX("or %2, %1, %0");
14693 #line 416 "rx-decode.opc"
14694 ID(or); DR(rdst
); SR(srcb
); S2R(srca
); F__SZ_
;
14696 /*----------------------------------------------------------------------*/
14705 switch (op
[2] & 0x00)
14708 goto op_semantics_102
;
14714 switch (op
[2] & 0x00)
14717 goto op_semantics_102
;
14723 switch (op
[2] & 0x00)
14726 goto op_semantics_102
;
14732 switch (op
[2] & 0x00)
14735 goto op_semantics_102
;
14741 switch (op
[2] & 0x00)
14744 goto op_semantics_102
;
14750 switch (op
[2] & 0x00)
14753 goto op_semantics_102
;
14759 switch (op
[2] & 0x00)
14762 goto op_semantics_102
;
14768 switch (op
[2] & 0x00)
14771 goto op_semantics_102
;
14777 switch (op
[2] & 0x00)
14780 goto op_semantics_102
;
14786 switch (op
[2] & 0x00)
14789 goto op_semantics_102
;
14795 switch (op
[2] & 0x00)
14798 goto op_semantics_102
;
14804 switch (op
[2] & 0x00)
14807 goto op_semantics_102
;
14813 switch (op
[2] & 0x00)
14816 goto op_semantics_102
;
14822 switch (op
[2] & 0x00)
14825 goto op_semantics_102
;
14831 switch (op
[2] & 0x00)
14834 goto op_semantics_102
;
14838 default: UNSUPPORTED(); break;
14841 default: UNSUPPORTED(); break;
14843 #line 973 "rx-decode.opc"
14845 return rx
->n_bytes
;
This page took 0.358939 seconds and 4 git commands to generate.