+ case 0x80:
+ op_semantics_103:
+ {
+ /** 1111 1101 0111 im00 1000rdst div #%1, %0 */
+#line 682 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 682 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im00 1000rdst div #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("div #%1, %0");
+#line 682 "rx-decode.opc"
+ ID(div); DR(rdst); SC(IMMex(im)); F_O___;
+
+ }
+ break;
+ case 0x90:
+ op_semantics_104:
+ {
+ /** 1111 1101 0111 im00 1001rdst divu #%1, %0 */
+#line 694 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 694 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im00 1001rdst divu #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("divu #%1, %0");
+#line 694 "rx-decode.opc"
+ ID(divu); DR(rdst); SC(IMMex(im)); F_O___;
+
+ }
+ break;
+ case 0xc0:
+ op_semantics_105:
+ {
+ /** 1111 1101 0111 im00 1100rdst tst #%1, %2 */
+#line 467 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 467 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im00 1100rdst tst #%1, %2 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("tst #%1, %2");
+#line 467 "rx-decode.opc"
+ ID(and); SC(IMMex(im)); S2R(rdst); F__SZ_;
+
+ }
+ break;
+ case 0xd0:
+ op_semantics_106:
+ {
+ /** 1111 1101 0111 im00 1101rdst xor #%1, %0 */
+#line 446 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 446 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im00 1101rdst xor #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("xor #%1, %0");
+#line 446 "rx-decode.opc"
+ ID(xor); SC(IMMex(im)); DR(rdst); F__SZ_;
+
+ }
+ break;
+ case 0xe0:
+ op_semantics_107:
+ {
+ /** 1111 1101 0111 im00 1110rdst stz #%1, %0 */
+#line 392 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 392 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im00 1110rdst stz #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("stz #%1, %0");
+#line 392 "rx-decode.opc"
+ ID(stcc); SC(IMMex(im)); DR(rdst); S2cc(RXC_z);
+
+ }
+ break;
+ case 0xf0:
+ op_semantics_108:
+ {
+ /** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */
+#line 395 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 395 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im00 1111rdst stnz #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("stnz #%1, %0");
+#line 395 "rx-decode.opc"
+ ID(stcc); SC(IMMex(im)); DR(rdst); S2cc(RXC_nz);
+
+ /*----------------------------------------------------------------------*/
+ /* RTSD */
+
+ }
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x72:
+ GETBYTE ();
+ switch (op[2] & 0xf0)
+ {
+ case 0x00:
+ {
+ /** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */
+#line 902 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 0010 0000 rdst fsub #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("fsub #%1, %0");
+#line 902 "rx-decode.opc"
+ ID(fsub); DR(rdst); SC(IMM(0)); F__SZ_;
+
+ }
+ break;
+ case 0x10:
+ {
+ /** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */
+#line 896 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 0010 0001 rdst fcmp #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("fcmp #%1, %0");
+#line 896 "rx-decode.opc"
+ ID(fcmp); DR(rdst); SC(IMM(0)); F_OSZ_;
+
+ }
+ break;
+ case 0x20:
+ {
+ /** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */
+#line 890 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 0010 0010 rdst fadd #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("fadd #%1, %0");
+#line 890 "rx-decode.opc"
+ ID(fadd); DR(rdst); SC(IMM(0)); F__SZ_;
+
+ }
+ break;
+ case 0x30:
+ {
+ /** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */
+#line 911 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 0010 0011 rdst fmul #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("fmul #%1, %0");
+#line 911 "rx-decode.opc"
+ ID(fmul); DR(rdst); SC(IMM(0)); F__SZ_;
+
+ }
+ break;
+ case 0x40:
+ {
+ /** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */
+#line 917 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 0010 0100 rdst fdiv #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("fdiv #%1, %0");
+#line 917 "rx-decode.opc"
+ ID(fdiv); DR(rdst); SC(IMM(0)); F__SZ_;
+
+ }
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x73:
+ GETBYTE ();
+ switch (op[2] & 0xe0)
+ {
+ case 0x00:
+ op_semantics_109:
+ {
+ /** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */
+#line 1007 "rx-decode.opc"
+ int im AU = (op[1] >> 2) & 0x03;
+#line 1007 "rx-decode.opc"
+ int crdst AU = op[2] & 0x1f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 0111 im11 000crdst mvtc #%1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" im = 0x%x,", im);
+ printf (" crdst = 0x%x\n", crdst);
+ }
+ SYNTAX("mvtc #%1, %0");
+#line 1007 "rx-decode.opc"
+ ID(mov); SC(IMMex(im)); DR(crdst + 16);
+
+ }
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x74:
+ GETBYTE ();
+ switch (op[2] & 0xf0)
+ {
+ case 0x20:
+ goto op_semantics_98;
+ break;
+ case 0x40:
+ goto op_semantics_99;
+ break;
+ case 0x50:
+ goto op_semantics_100;
+ break;
+ case 0x60:
+ goto op_semantics_101;
+ break;
+ case 0x70:
+ goto op_semantics_102;
+ break;
+ case 0x80:
+ goto op_semantics_103;
+ break;
+ case 0x90:
+ goto op_semantics_104;
+ break;
+ case 0xc0:
+ goto op_semantics_105;
+ break;
+ case 0xd0:
+ goto op_semantics_106;
+ break;
+ case 0xe0:
+ goto op_semantics_107;
+ break;
+ case 0xf0:
+ goto op_semantics_108;
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x77:
+ GETBYTE ();
+ switch (op[2] & 0xe0)
+ {
+ case 0x00:
+ goto op_semantics_109;
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x78:
+ GETBYTE ();
+ switch (op[2] & 0xf0)
+ {
+ case 0x20:
+ goto op_semantics_98;
+ break;
+ case 0x40:
+ goto op_semantics_99;
+ break;
+ case 0x50:
+ goto op_semantics_100;
+ break;
+ case 0x60:
+ goto op_semantics_101;
+ break;
+ case 0x70:
+ goto op_semantics_102;
+ break;
+ case 0x80:
+ goto op_semantics_103;
+ break;
+ case 0x90:
+ goto op_semantics_104;
+ break;
+ case 0xc0:
+ goto op_semantics_105;
+ break;
+ case 0xd0:
+ goto op_semantics_106;
+ break;
+ case 0xe0:
+ goto op_semantics_107;
+ break;
+ case 0xf0:
+ goto op_semantics_108;
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x7b:
+ GETBYTE ();
+ switch (op[2] & 0xe0)
+ {
+ case 0x00:
+ goto op_semantics_109;
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x7c:
+ GETBYTE ();
+ switch (op[2] & 0xf0)
+ {
+ case 0x20:
+ goto op_semantics_98;
+ break;
+ case 0x40:
+ goto op_semantics_99;
+ break;
+ case 0x50:
+ goto op_semantics_100;
+ break;
+ case 0x60:
+ goto op_semantics_101;
+ break;
+ case 0x70:
+ goto op_semantics_102;
+ break;
+ case 0x80:
+ goto op_semantics_103;
+ break;
+ case 0x90:
+ goto op_semantics_104;
+ break;
+ case 0xc0:
+ goto op_semantics_105;
+ break;
+ case 0xd0:
+ goto op_semantics_106;
+ break;
+ case 0xe0:
+ goto op_semantics_107;
+ break;
+ case 0xf0:
+ goto op_semantics_108;
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x7f:
+ GETBYTE ();
+ switch (op[2] & 0xe0)
+ {
+ case 0x00:
+ goto op_semantics_109;
+ break;
+ default: UNSUPPORTED(); break;
+ }
+ break;
+ case 0x80:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ op_semantics_110:
+ {
+ /** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */
+#line 732 "rx-decode.opc"
+ int immmm AU = op[1] & 0x1f;
+#line 732 "rx-decode.opc"
+ int rsrc AU = (op[2] >> 4) & 0x0f;
+#line 732 "rx-decode.opc"
+ int rdst AU = op[2] & 0x0f;
+ if (trace)
+ {
+ printf ("\033[33m%s\033[0m %02x %02x %02x\n",
+ "/** 1111 1101 100immmm rsrc rdst shlr #%2, %1, %0 */",
+ op[0], op[1], op[2]);
+ printf (" immmm = 0x%x,", immmm);
+ printf (" rsrc = 0x%x,", rsrc);
+ printf (" rdst = 0x%x\n", rdst);
+ }
+ SYNTAX("shlr #%2, %1, %0");
+#line 732 "rx-decode.opc"
+ ID(shlr); S2C(immmm); SR(rsrc); DR(rdst); F__SZC;
+
+ /*----------------------------------------------------------------------*/
+ /* ROTATE */
+
+ }
+ break;
+ }
+ break;
+ case 0x81:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x82:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x83:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x84:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x85:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x86:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x87:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x88:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x89:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x8a:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x8b:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x8c:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x8d:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x8e:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;
+ }
+ break;
+ case 0x8f:
+ GETBYTE ();
+ switch (op[2] & 0x00)
+ {
+ case 0x00:
+ goto op_semantics_110;
+ break;